summaryrefslogtreecommitdiff
path: root/Kernel/Syscalls
diff options
context:
space:
mode:
authorAndreas Kling <kling@serenityos.org>2021-03-11 14:24:08 +0100
committerAndreas Kling <kling@serenityos.org>2021-03-11 14:24:08 +0100
commit1608ef37d8a945c9422cc3dc40b1e04842dcf60b (patch)
tree9caf52c3cb65defdfb9a1eb550c8eda9274ab3ca /Kernel/Syscalls
parent4916b5c1300573c4fca94a1c0caf3a757565add4 (diff)
downloadserenity-1608ef37d8a945c9422cc3dc40b1e04842dcf60b.zip
Kernel: Move process termination status/signal into protected data
Diffstat (limited to 'Kernel/Syscalls')
-rw-r--r--Kernel/Syscalls/exit.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/Kernel/Syscalls/exit.cpp b/Kernel/Syscalls/exit.cpp
index 78fcd4cd04..616f0563be 100644
--- a/Kernel/Syscalls/exit.cpp
+++ b/Kernel/Syscalls/exit.cpp
@@ -31,8 +31,11 @@ namespace Kernel {
void Process::sys$exit(int status)
{
- m_termination_status = status;
- m_termination_signal = 0;
+ {
+ ProtectedDataMutationScope scope { *this };
+ m_termination_status = status;
+ m_termination_signal = 0;
+ }
die();
Thread::current()->die_if_needed();
VERIFY_NOT_REACHED();