diff options
| -rw-r--r-- | core/java/android/database/ContentObserver.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/core/java/android/database/ContentObserver.java b/core/java/android/database/ContentObserver.java index 5f01e300bf42..4795e979f644 100644 --- a/core/java/android/database/ContentObserver.java +++ b/core/java/android/database/ContentObserver.java @@ -193,6 +193,11 @@ public abstract class ContentObserver { */ private void dispatchChange(boolean selfChange, Uri uri, int userId) { if (mHandler == null) { + synchronized (mLock) { + if (mTransport == null) { + return; + } + } onChange(selfChange, uri, userId); } else { mHandler.post(new NotificationRunnable(selfChange, uri, userId)); @@ -213,6 +218,11 @@ public abstract class ContentObserver { @Override public void run() { + synchronized (mLock) { + if (mTransport == null) { + return; + } + } ContentObserver.this.onChange(mSelfChange, mUri, mUserId); } } |