diff options
| author | 2017-07-06 18:07:04 +0000 | |
|---|---|---|
| committer | 2017-07-06 18:07:04 +0000 | |
| commit | 09b6988e27a7cf394ec4077f58da2ee19b5c958c (patch) | |
| tree | cb3ff9d18b0394588d152f6dd7d3756c8f3a9cf3 | |
| parent | b171a46d193db3eee0ad837aa94c47d7752587a6 (diff) | |
| parent | 2df4e144a913b705c50bde929c75744b251967d9 (diff) | |
Merge "Fix ContentObserver unregister issue"
| -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);          }      } |