diff options
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 |
