From 8c01ec36e8bb9945902d10c53361413fb88ec151 Mon Sep 17 00:00:00 2001
From: m2049r <miner2049er@women-at-work.org>
Date: Wed, 10 Oct 2018 21:11:59 +0200
Subject: [PATCH] deal with illegal values for device type (#434)

---
 .../main/java/com/m2049r/xmrwallet/model/WalletManager.java | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/app/src/main/java/com/m2049r/xmrwallet/model/WalletManager.java b/app/src/main/java/com/m2049r/xmrwallet/model/WalletManager.java
index cac8abf8..cac7ece6 100644
--- a/app/src/main/java/com/m2049r/xmrwallet/model/WalletManager.java
+++ b/app/src/main/java/com/m2049r/xmrwallet/model/WalletManager.java
@@ -183,7 +183,11 @@ public class WalletManager {
 
     public Wallet.Device queryWalletDevice(String keys_file_name, String password) {
         int device = queryWalletDeviceJ(keys_file_name, password);
-        return Wallet.Device.values()[device + 1]; // mapping is monero+1=android
+        Wallet.Device[] types = Wallet.Device.values();
+        // mapping is monero+1=android
+        if ((device < 0) || (device > types.length - 2))
+            device = -1;
+        return types[device + 1];
     }
 
     private native int queryWalletDeviceJ(String keys_file_name, String password);