Loading core/java/android/app/ApplicationErrorReport.java +8 −0 Original line number Diff line number Diff line Loading @@ -150,6 +150,11 @@ public class ApplicationErrorReport implements Parcelable { */ public String exceptionClassName; /** * Message stored in the exception. */ public String exceptionMessage; /** * File which the exception was thrown from. */ Loading Loading @@ -181,6 +186,7 @@ public class ApplicationErrorReport implements Parcelable { */ public CrashInfo(Parcel in) { exceptionClassName = in.readString(); exceptionMessage = in.readString(); throwFileName = in.readString(); throwClassName = in.readString(); throwMethodName = in.readString(); Loading @@ -192,6 +198,7 @@ public class ApplicationErrorReport implements Parcelable { */ public void writeToParcel(Parcel dest, int flags) { dest.writeString(exceptionClassName); dest.writeString(exceptionMessage); dest.writeString(throwFileName); dest.writeString(throwClassName); dest.writeString(throwMethodName); Loading @@ -203,6 +210,7 @@ public class ApplicationErrorReport implements Parcelable { */ public void dump(Printer pw, String prefix) { pw.println(prefix + "exceptionClassName: " + exceptionClassName); pw.println(prefix + "exceptionMessage: " + exceptionMessage); pw.println(prefix + "throwFileName: " + throwFileName); pw.println(prefix + "throwClassName: " + throwClassName); pw.println(prefix + "throwMethodName: " + throwMethodName); Loading services/java/com/android/server/am/ActivityManagerService.java +9 −2 Original line number Diff line number Diff line Loading @@ -8218,12 +8218,19 @@ public final class ActivityManagerService extends ActivityManagerNative implemen report.time = crashData.getTime(); report.crashInfo.stackTrace = throwData.toString(); // extract the source of the exception, useful for report // clustering // Extract the source of the exception, useful for report // clustering. Also extract the "deepest" non-null exception // message. String exceptionMessage = throwData.getMessage(); while (throwData.getCause() != null) { throwData = throwData.getCause(); String msg = throwData.getMessage(); if (msg != null && msg.length() > 0) { exceptionMessage = msg; } } StackTraceElementData trace = throwData.getStackTrace()[0]; report.crashInfo.exceptionMessage = exceptionMessage; report.crashInfo.exceptionClassName = throwData.getType(); report.crashInfo.throwFileName = trace.getFileName(); report.crashInfo.throwClassName = trace.getClassName(); Loading Loading
core/java/android/app/ApplicationErrorReport.java +8 −0 Original line number Diff line number Diff line Loading @@ -150,6 +150,11 @@ public class ApplicationErrorReport implements Parcelable { */ public String exceptionClassName; /** * Message stored in the exception. */ public String exceptionMessage; /** * File which the exception was thrown from. */ Loading Loading @@ -181,6 +186,7 @@ public class ApplicationErrorReport implements Parcelable { */ public CrashInfo(Parcel in) { exceptionClassName = in.readString(); exceptionMessage = in.readString(); throwFileName = in.readString(); throwClassName = in.readString(); throwMethodName = in.readString(); Loading @@ -192,6 +198,7 @@ public class ApplicationErrorReport implements Parcelable { */ public void writeToParcel(Parcel dest, int flags) { dest.writeString(exceptionClassName); dest.writeString(exceptionMessage); dest.writeString(throwFileName); dest.writeString(throwClassName); dest.writeString(throwMethodName); Loading @@ -203,6 +210,7 @@ public class ApplicationErrorReport implements Parcelable { */ public void dump(Printer pw, String prefix) { pw.println(prefix + "exceptionClassName: " + exceptionClassName); pw.println(prefix + "exceptionMessage: " + exceptionMessage); pw.println(prefix + "throwFileName: " + throwFileName); pw.println(prefix + "throwClassName: " + throwClassName); pw.println(prefix + "throwMethodName: " + throwMethodName); Loading
services/java/com/android/server/am/ActivityManagerService.java +9 −2 Original line number Diff line number Diff line Loading @@ -8218,12 +8218,19 @@ public final class ActivityManagerService extends ActivityManagerNative implemen report.time = crashData.getTime(); report.crashInfo.stackTrace = throwData.toString(); // extract the source of the exception, useful for report // clustering // Extract the source of the exception, useful for report // clustering. Also extract the "deepest" non-null exception // message. String exceptionMessage = throwData.getMessage(); while (throwData.getCause() != null) { throwData = throwData.getCause(); String msg = throwData.getMessage(); if (msg != null && msg.length() > 0) { exceptionMessage = msg; } } StackTraceElementData trace = throwData.getStackTrace()[0]; report.crashInfo.exceptionMessage = exceptionMessage; report.crashInfo.exceptionClassName = throwData.getType(); report.crashInfo.throwFileName = trace.getFileName(); report.crashInfo.throwClassName = trace.getClassName(); Loading