You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by ia...@apache.org on 2013/05/28 21:12:25 UTC

android commit: CB-3523: Fix NPE on app restart with outstanding callback

Updated Branches:
  refs/heads/master abba254a3 -> 403297d96


CB-3523: Fix NPE on app restart with outstanding callback


Project: http://git-wip-us.apache.org/repos/asf/cordova-android/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-android/commit/403297d9
Tree: http://git-wip-us.apache.org/repos/asf/cordova-android/tree/403297d9
Diff: http://git-wip-us.apache.org/repos/asf/cordova-android/diff/403297d9

Branch: refs/heads/master
Commit: 403297d96795882de5f8103e51fbd2c38e758846
Parents: abba254
Author: Ian Clelland <ic...@chromium.org>
Authored: Tue May 28 15:11:25 2013 -0400
Committer: Ian Clelland <ic...@chromium.org>
Committed: Tue May 28 15:11:25 2013 -0400

----------------------------------------------------------------------
 .../src/org/apache/cordova/CordovaActivity.java    |   17 +++++---------
 1 files changed, 6 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-android/blob/403297d9/framework/src/org/apache/cordova/CordovaActivity.java
----------------------------------------------------------------------
diff --git a/framework/src/org/apache/cordova/CordovaActivity.java b/framework/src/org/apache/cordova/CordovaActivity.java
index 6e3d99d..4042b6b 100755
--- a/framework/src/org/apache/cordova/CordovaActivity.java
+++ b/framework/src/org/apache/cordova/CordovaActivity.java
@@ -856,18 +856,13 @@ public class CordovaActivity extends Activity implements CordovaInterface {
             mUploadMessage = null;
         }
         CordovaPlugin callback = this.activityResultCallback;
-        if(callback == null)
-        {
-            if(initCallbackClass != null)
-            {
-                this.activityResultCallback = appView.pluginManager.getPlugin(initCallbackClass);
-                callback = activityResultCallback;
-                LOG.d(TAG, "We have a callback to send this result to");
-                callback.onActivityResult(requestCode, resultCode, intent);
-            }
+        if(callback == null && initCallbackClass != null) {
+            // The application was restarted, but had defined an initial callback
+            // before being shut down.
+            this.activityResultCallback = appView.pluginManager.getPlugin(initCallbackClass);
+            callback = this.activityResultCallback;
         }
-        else
-        {
+        if(callback != null) {
             LOG.d(TAG, "We have a callback to send this result to");
             callback.onActivityResult(requestCode, resultCode, intent);
         }