am 185e3e24: Fix when managed cursors are required.
* commit '185e3e243ee1da136bcace854026b8abaf0c4c86':
Fix when managed cursors are required.
diff --git a/core/java/android/app/Activity.java b/core/java/android/app/Activity.java
index e3fb358..b739e10 100644
--- a/core/java/android/app/Activity.java
+++ b/core/java/android/app/Activity.java
@@ -4421,27 +4421,29 @@
final void performRestart() {
mFragments.noteStateNotSaved();
- synchronized (mManagedCursors) {
- final int N = mManagedCursors.size();
- for (int i=0; i<N; i++) {
- ManagedCursor mc = mManagedCursors.get(i);
- if (mc.mReleased || mc.mUpdated) {
- if (!mc.mCursor.requery()) {
- throw new IllegalStateException(
- "trying to requery an already closed cursor");
- }
- mc.mReleased = false;
- mc.mUpdated = false;
- }
- }
- }
-
if (mStopped) {
mStopped = false;
- mCalled = false;
if (mToken != null && mParent == null) {
WindowManagerImpl.getDefault().setStoppedState(mToken, false);
}
+
+ synchronized (mManagedCursors) {
+ final int N = mManagedCursors.size();
+ for (int i=0; i<N; i++) {
+ ManagedCursor mc = mManagedCursors.get(i);
+ if (mc.mReleased || mc.mUpdated) {
+ if (!mc.mCursor.requery()) {
+ throw new IllegalStateException(
+ "trying to requery an already closed cursor "
+ + mc.mCursor);
+ }
+ mc.mReleased = false;
+ mc.mUpdated = false;
+ }
+ }
+ }
+
+ mCalled = false;
mInstrumentation.callActivityOnRestart(this);
if (!mCalled) {
throw new SuperNotCalledException(