am e03cc0f3: Merge change 21112 into donut
Merge commit 'e03cc0f3aa2eb5b1e3b2f726f20e246ac56a8c87' into eclair
* commit 'e03cc0f3aa2eb5b1e3b2f726f20e246ac56a8c87':
Fix memory leaks in music app.
diff --git a/src/com/android/music/AlbumBrowserActivity.java b/src/com/android/music/AlbumBrowserActivity.java
index 2a55d08..61fc495 100644
--- a/src/com/android/music/AlbumBrowserActivity.java
+++ b/src/com/android/music/AlbumBrowserActivity.java
@@ -150,6 +150,11 @@
c.close();
}
}
+ // Because we pass the adapter to the next activity, we need to make
+ // sure it doesn't keep a reference to this activity. We can do this
+ // by clearing its DatasetObservers, which setListAdapter(null) does.
+ setListAdapter(null);
+ mAdapter = null;
unregisterReceiver(mScanListener);
super.onDestroy();
}
diff --git a/src/com/android/music/ArtistAlbumBrowserActivity.java b/src/com/android/music/ArtistAlbumBrowserActivity.java
index 8165979..c906d0e 100644
--- a/src/com/android/music/ArtistAlbumBrowserActivity.java
+++ b/src/com/android/music/ArtistAlbumBrowserActivity.java
@@ -158,6 +158,11 @@
c.close();
}
}
+ // Because we pass the adapter to the next activity, we need to make
+ // sure it doesn't keep a reference to this activity. We can do this
+ // by clearing its DatasetObservers, which setListAdapter(null) does.
+ setListAdapter(null);
+ mAdapter = null;
unregisterReceiver(mScanListener);
super.onDestroy();
}
diff --git a/src/com/android/music/PlaylistBrowserActivity.java b/src/com/android/music/PlaylistBrowserActivity.java
index d85f07d..fb3302d 100644
--- a/src/com/android/music/PlaylistBrowserActivity.java
+++ b/src/com/android/music/PlaylistBrowserActivity.java
@@ -175,6 +175,11 @@
c.close();
}
}
+ // Because we pass the adapter to the next activity, we need to make
+ // sure it doesn't keep a reference to this activity. We can do this
+ // by clearing its DatasetObservers, which setListAdapter(null) does.
+ setListAdapter(null);
+ mAdapter = null;
unregisterReceiver(mScanListener);
super.onDestroy();
}
diff --git a/src/com/android/music/QueryBrowserActivity.java b/src/com/android/music/QueryBrowserActivity.java
index 99fae16..a3af640 100644
--- a/src/com/android/music/QueryBrowserActivity.java
+++ b/src/com/android/music/QueryBrowserActivity.java
@@ -181,6 +181,11 @@
c.close();
}
}
+ // Because we pass the adapter to the next activity, we need to make
+ // sure it doesn't keep a reference to this activity. We can do this
+ // by clearing its DatasetObservers, which setListAdapter(null) does.
+ setListAdapter(null);
+ mAdapter = null;
}
/*
diff --git a/src/com/android/music/TrackBrowserActivity.java b/src/com/android/music/TrackBrowserActivity.java
index e4e1543..2c76db4 100644
--- a/src/com/android/music/TrackBrowserActivity.java
+++ b/src/com/android/music/TrackBrowserActivity.java
@@ -241,6 +241,11 @@
c.close();
}
}
+ // Because we pass the adapter to the next activity, we need to make
+ // sure it doesn't keep a reference to this activity. We can do this
+ // by clearing its DatasetObservers, which setListAdapter(null) does.
+ setListAdapter(null);
+ mAdapter = null;
unregisterReceiverSafe(mScanListener);
super.onDestroy();
}