Skip to content

Commit 49b6364

Browse files
committed
Stringify mach exception codes
1 parent 7d9e784 commit 49b6364

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

Sources/KSCrashRecording/KSCrashReportC.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1228,17 +1228,20 @@ static void writeError(const KSCrashReportWriter *const writer, const char *cons
12281228
#if KSCRASH_HOST_APPLE
12291229
writer->beginObject(writer, KSCrashField_Mach);
12301230
{
1231+
char buffer[20] = { 0 };
12311232
const char *machExceptionName = ksmach_exceptionName(crash->mach.type);
12321233
const char *machCodeName = crash->mach.code == 0 ? NULL : ksmach_kernelReturnCodeName(crash->mach.code);
12331234
writer->addUIntegerElement(writer, KSCrashField_Exception, (unsigned)crash->mach.type);
12341235
if (machExceptionName != NULL) {
12351236
writer->addStringElement(writer, KSCrashField_ExceptionName, machExceptionName);
12361237
}
1237-
writer->addUIntegerElement(writer, KSCrashField_Code, (unsigned)crash->mach.code);
1238+
snprintf(buffer, sizeof(buffer), "0x%llx", crash->mach.code);
1239+
writer->addStringElement(writer, KSCrashField_Code, buffer);
12381240
if (machCodeName != NULL) {
12391241
writer->addStringElement(writer, KSCrashField_CodeName, machCodeName);
12401242
}
1241-
writer->addUIntegerElement(writer, KSCrashField_Subcode, (size_t)crash->mach.subcode);
1243+
snprintf(buffer, sizeof(buffer), "0x%llx", crash->mach.subcode);
1244+
writer->addStringElement(writer, KSCrashField_Subcode, buffer);
12421245
}
12431246
writer->endContainer(writer);
12441247
#endif

0 commit comments

Comments
 (0)