浏览代码

Kernel: Stop back trace on a null base pointer

This silences some warnings trying to copy from null when capturing
a stack trace.
Tom 4 年之前
父节点
当前提交
f5330304a4
共有 1 个文件被更改,包括 2 次插入2 次删除
  1. 2 2
      Kernel/Thread.cpp

+ 2 - 2
Kernel/Thread.cpp

@@ -868,7 +868,7 @@ String Thread::backtrace_impl()
         FlatPtr stack_ptr, eip;
         if (Processor::get_context_frame_ptr(*this, stack_ptr, eip)) {
             recognized_symbols.append({ eip, symbolicate_kernel_address(eip) });
-            for (;;) {
+            while (stack_ptr) {
                 FlatPtr retaddr;
 
                 if (is_user_range(VirtualAddress(stack_ptr), sizeof(FlatPtr) * 2)) {
@@ -906,7 +906,7 @@ Vector<FlatPtr> Thread::raw_backtrace(FlatPtr ebp, FlatPtr eip) const
     backtrace.append(eip);
     FlatPtr stack_ptr_copy;
     FlatPtr stack_ptr = (FlatPtr)ebp;
-    for (;;) {
+    while (stack_ptr) {
         void* fault_at;
         if (!safe_memcpy(&stack_ptr_copy, (void*)stack_ptr, sizeof(FlatPtr), fault_at))
             break;