Merge change Ib7c1701a into eclair

* changes:
  Fix issue #1930911: Crash in system process
This commit is contained in:
Android (Google) Code Review
2009-09-29 01:18:57 -04:00

View File

@@ -1841,7 +1841,7 @@ public final class ViewRoot extends Handler implements ViewParent,
}
} break;
case DIE:
dispatchDetachedFromWindow();
doDie();
break;
case DISPATCH_KEY_FROM_IME: {
if (LOCAL_LOGV) Log.v(
@@ -2520,6 +2520,14 @@ public final class ViewRoot extends Handler implements ViewParent,
}
public void die(boolean immediate) {
if (immediate) {
doDie();
} else {
sendEmptyMessage(DIE);
}
}
void doDie() {
checkThread();
if (Config.LOGV) Log.v("ViewRoot", "DIE in " + this + " of " + mSurface);
synchronized (this) {
@@ -2543,11 +2551,7 @@ public final class ViewRoot extends Handler implements ViewParent,
}
if (mAdded) {
mAdded = false;
if (immediate) {
dispatchDetachedFromWindow();
} else if (mView != null) {
sendEmptyMessage(DIE);
}
dispatchDetachedFromWindow();
}
}
}