From 16bcb896faa6da7c43ed977f7d6d9c7ec6d26a0a Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 11 Dec 2022 05:30:46 +0200 Subject: [PATCH] QoL --- Core/Crash/SFrame.cpp | 3 +-- Core/Crash/Screens/StackFrame.cpp | 2 +- SystemCalls/Native.cpp | 7 +++++-- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/Core/Crash/SFrame.cpp b/Core/Crash/SFrame.cpp index a7ec519..d2f304c 100644 --- a/Core/Crash/SFrame.cpp +++ b/Core/Crash/SFrame.cpp @@ -25,14 +25,13 @@ namespace CrashHandler SafeFunction void TraceFrames(CHArchTrapFrame *Frame, int Count, SymbolResolver::Symbols *SymHandle, bool Kernel) { - #if defined(__amd64__) struct StackFrame *frames = (struct StackFrame *)Frame->rbp; // (struct StackFrame *)__builtin_frame_address(0); #elif defined(__i386__) struct StackFrame *frames = (struct StackFrame *)Frame->ebp; // (struct StackFrame *)__builtin_frame_address(0); #elif defined(__aarch64__) #endif - debug("Stack tracing..."); + debug("\nStack tracing... %p %d %p %d", Frame, Count, frames, Kernel); EHPrint("\e7981FC\nStack Trace:\n"); if (!frames || !frames->rip || !frames->rbp) { diff --git a/Core/Crash/Screens/StackFrame.cpp b/Core/Crash/Screens/StackFrame.cpp index 6a93cfe..3698183 100644 --- a/Core/Crash/Screens/StackFrame.cpp +++ b/Core/Crash/Screens/StackFrame.cpp @@ -28,7 +28,7 @@ namespace CrashHandler SymbolResolver::Symbols *sh = data.Process->ELFSymbolTable; if (!sh) { - EHPrint("\eFF0000< No symbol table available. >\n"); + EHPrint("\n\eFF0000< No symbol table available. >\n"); return; } TraceFrames(data.Frame, 40, sh, false); diff --git a/SystemCalls/Native.cpp b/SystemCalls/Native.cpp index 6860943..3542466 100644 --- a/SystemCalls/Native.cpp +++ b/SystemCalls/Native.cpp @@ -15,8 +15,11 @@ static uint64_t sys_exit(SyscallsFrame *Frame, uint64_t code) static int sys_print(SyscallsFrame *Frame, char Char, int Index) { - debug("%c", Char); - return Display->Print(Char, Index, true); + int ret = Display->Print(Char, Index, true); +#ifdef DEBUG + Display->SetBuffer(Index); +#endif + return ret; } static void *NativeSyscallsTable[] = {