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