diff options
| author | Patrick Dubroy <dubroy@google.com> | 2011-01-13 17:55:37 -0800 |
|---|---|---|
| committer | Patrick Dubroy <dubroy@google.com> | 2011-01-14 14:13:31 -0800 |
| commit | ec84c3a189e4aa70aa6ea8ba712e5a4f260a153b (patch) | |
| tree | be5f82da1bec89ee491154bbc001bc8523e3b531 /core/java/android/widget/RemoteViewsAdapter.java | |
| parent | 2150553dc374204a1cb3033ed3fa65c2f22dd5e7 (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.java | 9 |
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 |
