diff options
| -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; } } |
