From dc27a782b0eb312657200133de3b793575ce2db8 Mon Sep 17 00:00:00 2001 From: str4d <str4d@mail.i2p> Date: Fri, 17 Oct 2014 06:54:26 +0000 Subject: [PATCH] Fixed NPE in client library with State unparceling This only fixes the symptom, but the crash log on Google Play doesn't shed light on what the problem is. --- .../main/java/net/i2p/android/router/service/State.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/client/src/main/java/net/i2p/android/router/service/State.java b/client/src/main/java/net/i2p/android/router/service/State.java index 148016e6e..383c8f095 100644 --- a/client/src/main/java/net/i2p/android/router/service/State.java +++ b/client/src/main/java/net/i2p/android/router/service/State.java @@ -35,7 +35,13 @@ public enum State implements Parcelable { @Override public State createFromParcel(final Parcel source) { try { - return State.valueOf(source.readString()); + String stateVal = source.readString(); + if (stateVal == null) { + // Somehow we got a null from the Parcel. Fail gracefully. + android.util.Log.e("I2P", "Received null from State Parcel."); + return null; + } + return State.valueOf(stateVal); } catch (IllegalArgumentException e) { // Parcel is from a newer version of State with new states. return null; -- GitLab