diff options
author | Marco Nelissen <marcone@google.com> | 2014-03-27 11:27:11 -0700 |
---|---|---|
committer | Marco Nelissen <marcone@google.com> | 2014-03-27 13:30:17 -0700 |
commit | 1e45d525d1e521a0b1d425d53f1cda773fd203d3 (patch) | |
tree | 83bcab1640ad6c59cd2c2cb551cfb878caaa99d2 /src/com/android/providers | |
parent | 1cf716968afd032e8261df3f6c4671c1f0c5f769 (diff) | |
download | android_packages_providers_MediaProvider-1e45d525d1e521a0b1d425d53f1cda773fd203d3.tar.gz android_packages_providers_MediaProvider-1e45d525d1e521a0b1d425d53f1cda773fd203d3.tar.bz2 android_packages_providers_MediaProvider-1e45d525d1e521a0b1d425d53f1cda773fd203d3.zip |
Unset server before database is discarded.
This fixes a broadcastreceiver leak.
b/13622801
Change-Id: If9da147163c8f819eae66f97424a37e6f6f6d3aa
Diffstat (limited to 'src/com/android/providers')
-rw-r--r-- | src/com/android/providers/media/MtpService.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/com/android/providers/media/MtpService.java b/src/com/android/providers/media/MtpService.java index e57aa645..7f61d8ba 100644 --- a/src/com/android/providers/media/MtpService.java +++ b/src/com/android/providers/media/MtpService.java @@ -158,6 +158,9 @@ public class MtpService extends Service { } } final StorageVolume primary = StorageManager.getPrimaryVolume(mVolumes); + if (mDatabase != null) { + mDatabase.setServer(null); + } mDatabase = new MtpDatabase(this, MediaProvider.EXTERNAL_VOLUME, primary.getPath(), subdirs); manageServiceLocked(); @@ -204,6 +207,9 @@ public class MtpService extends Service { public void onDestroy() { unregisterReceiver(mReceiver); mStorageManager.unregisterListener(mStorageEventListener); + if (mDatabase != null) { + mDatabase.setServer(null); + } } private final IMtpService.Stub mBinder = |