Merge "Move the callbacks in app died/crash handling out of WM global lock" into sc-dev
This commit is contained in:
@@ -5620,10 +5620,6 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
|
||||
mTaskSupervisor.endDeferResume();
|
||||
}
|
||||
|
||||
if (wpc.isInstrumenting()) {
|
||||
finishInstrumentationCallback.run();
|
||||
}
|
||||
|
||||
if (!restarting && hasVisibleActivities) {
|
||||
deferWindowLayout();
|
||||
try {
|
||||
@@ -5640,6 +5636,9 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
|
||||
}
|
||||
}
|
||||
}
|
||||
if (wpc.isInstrumenting()) {
|
||||
finishInstrumentationCallback.run();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -6139,6 +6138,7 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
|
||||
public boolean handleAppCrashInActivityController(String processName, int pid,
|
||||
String shortMsg, String longMsg, long timeMillis, String stackTrace,
|
||||
Runnable killCrashingAppCallback) {
|
||||
Runnable targetRunnable = null;
|
||||
synchronized (mGlobalLock) {
|
||||
if (mController == null) {
|
||||
return false;
|
||||
@@ -6147,15 +6147,18 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
|
||||
try {
|
||||
if (!mController.appCrashed(processName, pid, shortMsg, longMsg, timeMillis,
|
||||
stackTrace)) {
|
||||
killCrashingAppCallback.run();
|
||||
return true;
|
||||
targetRunnable = killCrashingAppCallback;
|
||||
}
|
||||
} catch (RemoteException e) {
|
||||
mController = null;
|
||||
Watchdog.getInstance().setActivityController(null);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
if (targetRunnable != null) {
|
||||
targetRunnable.run();
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user