diff options
| author | Dianne Hackborn <hackbod@google.com> | 2010-08-09 16:57:18 -0700 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-08-09 16:57:18 -0700 |
| commit | aebf9ea3a872eb11fc4dce726260b696a5cac9f7 (patch) | |
| tree | 3e4248fd8eaa5ddcbf2d1a773b616ca3980aaf6e | |
| parent | 78aa1f0b5e146ed6035746ff1125013827298b22 (diff) | |
| parent | debb2e25b3ce2f0f5195a2895dd1882fc172d4d8 (diff) | |
| download | frameworks_base-aebf9ea3a872eb11fc4dce726260b696a5cac9f7.zip frameworks_base-aebf9ea3a872eb11fc4dce726260b696a5cac9f7.tar.gz frameworks_base-aebf9ea3a872eb11fc4dce726260b696a5cac9f7.tar.bz2 | |
Merge "This may fix LoaderManager bug where a closed cursor could be used."
| -rw-r--r-- | core/java/android/app/LoaderManager.java | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/core/java/android/app/LoaderManager.java b/core/java/android/app/LoaderManager.java index e7bdd8b..28abcaa 100644 --- a/core/java/android/app/LoaderManager.java +++ b/core/java/android/app/LoaderManager.java @@ -185,11 +185,14 @@ class LoaderManagerImpl implements LoaderManager { void stop() { if (DEBUG) Log.v(TAG, " Stopping: " + this); mStarted = false; - if (mLoader != null && mListenerRegistered) { - // Let the loader know we're done with it - mListenerRegistered = false; - mLoader.unregisterListener(this); - mLoader.stopLoading(); + if (!mRetaining) { + if (mLoader != null && mListenerRegistered) { + // Let the loader know we're done with it + mListenerRegistered = false; + mLoader.unregisterListener(this); + mLoader.stopLoading(); + } + mData = null; } } |
