diff --git a/app/src/main/java/com/tangem/domain/wallet/eth/EthData.java b/app/src/main/java/com/tangem/domain/wallet/eth/EthData.java index df44ecef13..7921eaf1c6 100644 --- a/app/src/main/java/com/tangem/domain/wallet/eth/EthData.java +++ b/app/src/main/java/com/tangem/domain/wallet/eth/EthData.java @@ -62,8 +62,12 @@ public class EthData extends CoinData { public void loadFromBundle(Bundle B) { super.loadFromBundle(B); - String currency = B.getString("BalanceCurrency"); - balance = new CoinEngine.InternalAmount(B.getString("BalanceDecimal"), currency); + if (B.containsKey("BalanceCurrency") && B.containsKey("BalanceDecimal")) { + String currency = B.getString("BalanceCurrency"); + balance = new CoinEngine.InternalAmount(B.getString("BalanceDecimal"), currency); + } else { + balance = null; + } if (B.containsKey("confirmTx")) countConfirmedTX = new BigInteger(B.getString("confirmTx"), 16); @@ -75,8 +79,10 @@ public class EthData extends CoinData { public void saveToBundle(Bundle B) { super.saveToBundle(B); try { - B.putString("BalanceCurrency", balance.getCurrency()); - B.putString("BalanceDecimal", balance.toString()); + if (balance != null) { + B.putString("BalanceCurrency", balance.getCurrency()); + B.putString("BalanceDecimal", balance.toString()); + } B.putString("confirmTx", getConfirmedTXCount().toString(16)); B.putString("unconfirmTx", getUnconfirmedTXCount().toString(16)); diff --git a/app/src/main/java/com/tangem/domain/wallet/token/TokenData.java b/app/src/main/java/com/tangem/domain/wallet/token/TokenData.java index b0bfd6cd50..3c653824ee 100644 --- a/app/src/main/java/com/tangem/domain/wallet/token/TokenData.java +++ b/app/src/main/java/com/tangem/domain/wallet/token/TokenData.java @@ -20,6 +20,7 @@ public class TokenData extends EthData { return balanceAlter; } + public void setBalanceAlterInInternalUnits(CoinEngine.InternalAmount value) { balanceAlter = value; } @@ -28,7 +29,11 @@ public class TokenData extends EthData { public void loadFromBundle(Bundle B) { super.loadFromBundle(B); - balanceAlter = new CoinEngine.InternalAmount(B.getString("BalanceDecimalAlter"),"wei"); + if (B.containsKey("BalanceDecimalAlter")) { + balanceAlter = new CoinEngine.InternalAmount(B.getString("BalanceDecimalAlter"), "wei"); + } else { + balanceAlter = null; + } } @Override @@ -36,7 +41,9 @@ public class TokenData extends EthData { super.saveToBundle(B); try { - B.putString("BalanceDecimalAlter", balanceAlter.toString()); + if (balanceAlter != null) { + B.putString("BalanceDecimalAlter", balanceAlter.toString()); + } } catch (Exception e) { Log.e("Can't save to bundle ", e.getMessage()); }