1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-15 09:54:57 +00:00

Kernel: Demangle kernel C++ symbols correctly again

I broke this while implementing module linking. Also move the actual
demangling work to AK, in AK::demangle(const char*)
This commit is contained in:
Andreas Kling 2019-11-29 14:55:07 +01:00
parent 422e5166f2
commit f75a6b9daa
4 changed files with 27 additions and 14 deletions

View file

@ -1,3 +1,4 @@
#include <AK/Demangle.h>
#include <AK/StringBuilder.h>
#include <Kernel/FileSystem/FileDescription.h>
#include <Kernel/Process.h>
@ -682,7 +683,7 @@ String Thread::backtrace_impl() const
if (symbol.ksym->address == ksym_highest_address && offset > 4096)
builder.appendf("%p\n", symbol.address);
else
builder.appendf("%p %s +%u\n", symbol.address, symbol.ksym->name, offset);
builder.appendf("%p %s +%u\n", symbol.address, demangle(symbol.ksym->name).characters(), offset);
}
return builder.to_string();
}