OSDN Git Service

Insufficient ProcessRecord cleanup when persistent process is killed
authorAkira Numata <akira.numata@sonymobile.com>
Thu, 13 Mar 2014 04:36:31 +0000 (13:36 +0900)
committerTakeshi Aimi <takeshi.aimi@sonymobile.com>
Tue, 18 Mar 2014 05:41:30 +0000 (05:41 +0000)
commiteff08c4ffe41e0a52ddd2c8c9d968482bae5935d
treee427dd5192262a4c974c96315b1fab64fe4adb14
parentd88d817498327462f42e50348239eac59147f310
Insufficient ProcessRecord cleanup when persistent process is killed

When persistent process with Service restarts, ActivityManagerService
does not reset ProcessRecord#hasClientActivites to false
(because ProcessRecord of persistent process is continued using
after killing).

It disturbs updating LRU list in ActivityManagerService, and then,
when new process calls ActivityManagerProxy#publishContentProviders,
SecurityException happens because of no entry in the list.

Bug: 13517358

Change-Id: I46b064f71a4f7025ade1bf117801352a7ab22e6a
services/java/com/android/server/am/ActivityManagerService.java