OSDN Git Service

Fix Gallery crash
authorBobby Georgescu <georgescu@google.com>
Fri, 19 Oct 2012 00:56:20 +0000 (17:56 -0700)
committerBobby Georgescu <georgescu@google.com>
Fri, 19 Oct 2012 01:05:58 +0000 (18:05 -0700)
Bug: 7268985
Change-Id: I88c823d3270cb74d6e2bd7df5b6b6ed9e28f16a6

src/com/android/gallery3d/app/AlbumPage.java

index f1e1497..6e859a9 100644 (file)
@@ -104,6 +104,7 @@ public class AlbumPage extends ActivityState implements GalleryActionBar.Cluster
     private Future<Integer> mSyncTask = null;
     private boolean mLaunchedFromPhotoPage;
     private boolean mInCameraApp;
+    private boolean mInCameraAndWantQuitOnPause;
 
     private int mLoadingBits = 0;
     private boolean mInitialSynced = false;
@@ -427,6 +428,7 @@ public class AlbumPage extends ActivityState implements GalleryActionBar.Cluster
             setLoadingBit(BIT_LOADING_SYNC);
             mSyncTask = mMediaSet.requestSync(this);
         }
+        mInCameraAndWantQuitOnPause = mInCameraApp;
     }
 
     @Override
@@ -453,7 +455,7 @@ public class AlbumPage extends ActivityState implements GalleryActionBar.Cluster
         // The camera app should always launch in capture mode when
         // resumed, so make the next resume faster by closing the grid
         // view now
-        if (mInCameraApp) {
+        if (mInCameraAndWantQuitOnPause) {
             if (mActivity.getStateManager().getTopState() == this)
                 mActivity.getStateManager().finishState(this, false);
         }
@@ -608,6 +610,7 @@ public class AlbumPage extends ActivityState implements GalleryActionBar.Cluster
                 return true;
             }
             case R.id.action_slideshow: {
+                mInCameraAndWantQuitOnPause = false;
                 Bundle data = new Bundle();
                 data.putString(SlideshowPage.KEY_SET_PATH,
                         mMediaSetPath.toString());