Merge "[Monkey][Bugfix] Do not report crash in monkey proc." am: f2384e9621

Original change: https://android-review.googlesource.com/c/platform/development/+/2579611

Change-Id: Id19d3deb246730d5d98f2f690c1ee6aaedd43b2e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Adrian Roos
2023-05-10 10:45:53 +00:00
committed by Automerger Merge Worker

View File

@@ -550,6 +550,16 @@ public class Monkey {
commandLineReport(bugreportName + ".txt", "bugreport");
}
// UncaughtExceptionHandler set by RuntimeInit will report crash to system_server, which
// is not necessary for monkey and even causes deadlock. So we override it.
private static class KillSelfHandler implements Thread.UncaughtExceptionHandler {
@Override
public void uncaughtException(Thread t, Throwable e) {
Process.killProcess(Process.myPid());
System.exit(10);
}
}
/**
* Command-line entry point.
*
@@ -559,6 +569,7 @@ public class Monkey {
// Set the process name showing in "ps" or "top"
Process.setArgV0("com.android.commands.monkey");
Thread.setDefaultUncaughtExceptionHandler(new KillSelfHandler());
Logger.err.println("args: " + Arrays.toString(args));
int resultCode = (new Monkey()).run(args);
System.exit(resultCode);