summaryrefslogtreecommitdiff
path: root/core/java/android/widget/RemoteViewsAdapter.java
diff options
context:
space:
mode:
authorPatrick Dubroy <dubroy@google.com>2011-01-13 17:55:37 -0800
committerPatrick Dubroy <dubroy@google.com>2011-01-14 14:13:31 -0800
commitec84c3a189e4aa70aa6ea8ba712e5a4f260a153b (patch)
treebe5f82da1bec89ee491154bbc001bc8523e3b531 /core/java/android/widget/RemoteViewsAdapter.java
parent2150553dc374204a1cb3033ed3fa65c2f22dd5e7 (diff)
Allow old view hierarchy to be GC'ed more quickly during rotation.
Diffstat (limited to 'core/java/android/widget/RemoteViewsAdapter.java')
-rw-r--r--core/java/android/widget/RemoteViewsAdapter.java9
1 files changed, 4 insertions, 5 deletions
diff --git a/core/java/android/widget/RemoteViewsAdapter.java b/core/java/android/widget/RemoteViewsAdapter.java
index a7bff62935a9..df1f4bf12dce 100644
--- a/core/java/android/widget/RemoteViewsAdapter.java
+++ b/core/java/android/widget/RemoteViewsAdapter.java
@@ -152,6 +152,7 @@ public class RemoteViewsAdapter extends BaseAdapter {
if (callback != null) {
callback.onRemoteAdapterDisconnected();
}
+ adapter.mCache.reset();
}
public IRemoteViewsFactory getRemoteViewsFactory() {
@@ -657,11 +658,9 @@ public class RemoteViewsAdapter extends BaseAdapter {
try {
remoteViews = factory.getViewAt(position);
itemId = factory.getItemId(position);
- } catch (Exception e) {
- // Print the error
- Log.e(TAG, "Error in updateRemoteViews(" + position + "): " +
- e.getMessage());
- e.printStackTrace();
+ } catch (Throwable t) {
+ Log.e(TAG, "Error in updateRemoteViews(" + position + "): " + t.getMessage());
+ t.printStackTrace();
// Return early to prevent additional work in re-centering the view cache, and
// swapping from the loading view