Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ddc50e67 authored by Ben Cheng's avatar Ben Cheng
Browse files

Format stack trace PC offset to 8 digits with leading zeros.

BUG: 9067999
Change-Id: Ib5bbf2d5c166dc27e35386d589536eeb6b078c6a
parent 4508ef49
Loading
Loading
Loading
Loading
+9 −8
Original line number Diff line number Diff line
@@ -319,16 +319,17 @@ void format_backtrace_line(unsigned frameNumber, const backtrace_frame_t* frame
    if (symbolName) {
        uint32_t pc_offset = symbol->relative_pc - symbol->relative_symbol_addr;
        if (pc_offset) {
            snprintf(buffer, bufferSize, "#%02u  pc %p  %.*s (%.*s+%u)",
                    frameNumber, (void*) symbol->relative_pc, fieldWidth, mapName,
                    fieldWidth, symbolName, pc_offset);
            snprintf(buffer, bufferSize, "#%02u  pc %08x  %.*s (%.*s+%u)",
                    frameNumber, (unsigned int) symbol->relative_pc,
                    fieldWidth, mapName, fieldWidth, symbolName, pc_offset);
        } else {
            snprintf(buffer, bufferSize, "#%02u  pc %p  %.*s (%.*s)",
                    frameNumber, (void*) symbol->relative_pc, fieldWidth, mapName,
                    fieldWidth, symbolName);
            snprintf(buffer, bufferSize, "#%02u  pc %08x  %.*s (%.*s)",
                    frameNumber, (unsigned int) symbol->relative_pc,
                    fieldWidth, mapName, fieldWidth, symbolName);
        }
    } else {
        snprintf(buffer, bufferSize, "#%02u  pc %p  %.*s",
                frameNumber, (void*) symbol->relative_pc, fieldWidth, mapName);
        snprintf(buffer, bufferSize, "#%02u  pc %08x  %.*s",
                frameNumber, (unsigned int) symbol->relative_pc,
                fieldWidth, mapName);
    }
}