fix crash screen behavior when stacktrace is theoretically disabled

This commit is contained in:
someone2639
2021-09-19 12:39:10 -04:00
parent c97acfb2d8
commit fa2d2a8052
2 changed files with 5 additions and 0 deletions

View File

@@ -147,6 +147,7 @@ SECTIONS
/* hardcoded symbols to satisfy preliminary link for map parser */
#ifndef DEBUG_MAP_STACKTRACE
parse_map = 0x80345678;
find_function_in_stack = 0x80345678;
_mapDataSegmentRomStart = 0;
gMapEntries = 0;
gMapEntrySize = 0;

View File

@@ -275,6 +275,10 @@ void draw_stacktrace(OSThread *thread, s32 cause) {
crash_screen_print(30, 45 + (i * 10), "STACK TRACE DISABLED");
break;
} else {
if ((u32) find_function_in_stack == 0x80345678) {
return;
}
char *fname = find_function_in_stack(&temp_sp);
if (fname == NULL || (*(u32*)temp_sp & 0x80000000 == 0)) {
crash_screen_print(30, 45 + (i * 10), "%08X: UNKNOWN", temp_sp);