Merge "Default to host VM for Art/Dalvik when not specified"
diff --git a/src/test/java/com/android/tools/r8/naming/retrace/StackTrace.java b/src/test/java/com/android/tools/r8/naming/retrace/StackTrace.java
index 68e09c1..3270e48 100644
--- a/src/test/java/com/android/tools/r8/naming/retrace/StackTrace.java
+++ b/src/test/java/com/android/tools/r8/naming/retrace/StackTrace.java
@@ -123,7 +123,8 @@
List<StackTraceLine> stackTraceLines = new ArrayList<>();
List<String> stderrLines = StringUtils.splitLines(stderr);
- // A Dalvik stacktrace looks like this:
+ // A Dalvik stacktrace looks like this (apparently the bottom frame
+ // "dalvik.system.NativeStart.main" is not always present)
// W(209693) threadid=1: thread exiting with uncaught exception (group=0xf616cb20) (dalvikvm)
// java.lang.NullPointerException
// \tat com.android.tools.r8.naming.retrace.Main.a(:133)
@@ -143,8 +144,9 @@
// \tat com.android.tools.r8.naming.retrace.Main.a(:156)
// \tat com.android.tools.r8.naming.retrace.Main.main(:162)
int last = stderrLines.size();
- if (ToolHelper.getDexVm().isOlderThanOrEqual(DexVm.ART_4_4_4_HOST)) {
- // Skip the bottom frame "dalvik.system.NativeStart.main".
+ // Skip the bottom frame "dalvik.system.NativeStart.main" if present.
+ if (ToolHelper.getDexVm().isOlderThanOrEqual(DexVm.ART_4_4_4_HOST)
+ && stderrLines.get(last - 1).contains("dalvik.system.NativeStart.main")) {
last--;
}
// Take all lines from the bottom starting with "\tat ".