浏览代码

Kernel: Remove alternative signal stack settings on execve(2)

A successful call to execve(2) removes any existing alternate signal
stack.
Idan Horowitz 3 年之前
父节点
当前提交
31fa3f8b1b
共有 1 个文件被更改,包括 3 次插入0 次删除
  1. 3 0
      Kernel/Thread.cpp

+ 3 - 0
Kernel/Thread.cpp

@@ -685,6 +685,9 @@ void Thread::clear_signals()
     m_pending_signals = 0;
     m_have_any_unmasked_pending_signals.store(false, AK::memory_order_release);
     m_signal_action_data.fill({});
+    // A successful call to execve(2) removes any existing alternate signal stack
+    m_alternative_signal_stack = 0;
+    m_alternative_signal_stack_size = 0;
 }
 
 // Certain exceptions, such as SIGSEGV and SIGILL, put a