KeyStore: return null when response code indicates an error.
diff --git a/keystore/java/android/security/KeyStore.java b/keystore/java/android/security/KeyStore.java
index a47534b..0a2fe4c 100644
--- a/keystore/java/android/security/KeyStore.java
+++ b/keystore/java/android/security/KeyStore.java
@@ -172,8 +172,10 @@
             socket.shutdownOutput();
 
             InputStream in = socket.getInputStream();
-            code = in.read();
-            if (code == -1) {
+            if ((code = in.read()) != NO_ERROR) {
+                if (code != -1) {
+                    mError = code;
+                }
                 return null;
             }
 
@@ -194,7 +196,7 @@
                 }
                 results.add(result);
             }
-            mError = code;
+            mError = NO_ERROR;
             return results.toArray(new byte[results.size()][]);
         } catch (IOException e) {
             // ignore