OSDN Git Service

Snapshot RemoteViews before releasing lock.
authorJeff Sharkey <jsharkey@android.com>
Wed, 6 Jul 2016 23:38:59 +0000 (17:38 -0600)
committerJeff Sharkey <jsharkey@android.com>
Wed, 6 Jul 2016 23:39:21 +0000 (17:39 -0600)
commit8a918b13a814ae8985e283aa42e68f32b677d8b1
tree2ca2f2f3b9db9ec0bedf0e79d6f77d7a5db12dc3
parent400960a40e84f7f0968b3019ac3c01fcf4954575
Snapshot RemoteViews before releasing lock.

The MSG_NOTIFY_UPDATE_APP_WIDGET message is sent asynchronously,
meaning it tries sending RemoteViews without the lock held, possibly
while another Binder thread is trying to mutate it.

Fix this by creating a copy for the thread to safely dispatch.

Bug: 29889779
Change-Id: I341fbbf89abee97a66cd67f1dd2a728282b68bfa
services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java