Merge "Schedule agentDisconnected() in handler thread" am: c02a4a4613
am: 72a838e704
Change-Id: I2eda02ea14fb67b1a0192750ae3885ec89f14564
This commit is contained in:
@@ -6416,13 +6416,18 @@ public final class ActivityManagerService extends ActivityManagerNative
|
|||||||
removeLruProcessLocked(app);
|
removeLruProcessLocked(app);
|
||||||
if (mBackupTarget != null && mBackupTarget.app.pid == pid) {
|
if (mBackupTarget != null && mBackupTarget.app.pid == pid) {
|
||||||
Slog.w(TAG, "Unattached app died before backup, skipping");
|
Slog.w(TAG, "Unattached app died before backup, skipping");
|
||||||
try {
|
mHandler.post(new Runnable() {
|
||||||
IBackupManager bm = IBackupManager.Stub.asInterface(
|
@Override
|
||||||
ServiceManager.getService(Context.BACKUP_SERVICE));
|
public void run(){
|
||||||
bm.agentDisconnected(app.info.packageName);
|
try {
|
||||||
} catch (RemoteException e) {
|
IBackupManager bm = IBackupManager.Stub.asInterface(
|
||||||
// Can't happen; the backup manager is local
|
ServiceManager.getService(Context.BACKUP_SERVICE));
|
||||||
}
|
bm.agentDisconnected(app.info.packageName);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
// Can't happen; the backup manager is local
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
if (isPendingBroadcastProcessLocked(pid)) {
|
if (isPendingBroadcastProcessLocked(pid)) {
|
||||||
Slog.w(TAG, "Unattached app died before broadcast acknowledged, skipping");
|
Slog.w(TAG, "Unattached app died before broadcast acknowledged, skipping");
|
||||||
@@ -16972,13 +16977,18 @@ public final class ActivityManagerService extends ActivityManagerNative
|
|||||||
if (mBackupTarget != null && app.pid == mBackupTarget.app.pid) {
|
if (mBackupTarget != null && app.pid == mBackupTarget.app.pid) {
|
||||||
if (DEBUG_BACKUP || DEBUG_CLEANUP) Slog.d(TAG_CLEANUP, "App "
|
if (DEBUG_BACKUP || DEBUG_CLEANUP) Slog.d(TAG_CLEANUP, "App "
|
||||||
+ mBackupTarget.appInfo + " died during backup");
|
+ mBackupTarget.appInfo + " died during backup");
|
||||||
try {
|
mHandler.post(new Runnable() {
|
||||||
IBackupManager bm = IBackupManager.Stub.asInterface(
|
@Override
|
||||||
ServiceManager.getService(Context.BACKUP_SERVICE));
|
public void run(){
|
||||||
bm.agentDisconnected(app.info.packageName);
|
try {
|
||||||
} catch (RemoteException e) {
|
IBackupManager bm = IBackupManager.Stub.asInterface(
|
||||||
// can't happen; backup manager is local
|
ServiceManager.getService(Context.BACKUP_SERVICE));
|
||||||
}
|
bm.agentDisconnected(app.info.packageName);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
// can't happen; backup manager is local
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = mPendingProcessChanges.size() - 1; i >= 0; i--) {
|
for (int i = mPendingProcessChanges.size() - 1; i >= 0; i--) {
|
||||||
|
|||||||
Reference in New Issue
Block a user