summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/src/UserProcessScheduler.cc
diff options
context:
space:
mode:
Diffstat (limited to 'dev/kernel/src/UserProcessScheduler.cc')
-rw-r--r--dev/kernel/src/UserProcessScheduler.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/dev/kernel/src/UserProcessScheduler.cc b/dev/kernel/src/UserProcessScheduler.cc
index 15f55839..5e8cc89e 100644
--- a/dev/kernel/src/UserProcessScheduler.cc
+++ b/dev/kernel/src/UserProcessScheduler.cc
@@ -325,6 +325,8 @@ namespace Kernel
return kErrorProcessFault;
}
+ rt_set_memory(process.StackFrame, 0, sizeof(HAL::StackFrame));
+
#ifdef __NE_VIRTUAL_MEMORY_SUPPORT__
flags = HAL::kMMFlagsPresent;
flags |= HAL::kMMFlagsWr;
@@ -351,7 +353,6 @@ namespace Kernel
}
process.StackReserve = new UInt8[process.StackSize];
- rt_set_memory(process.StackReserve, 0, process.StackSize);
if (!process.StackReserve)
{
@@ -359,6 +360,8 @@ namespace Kernel
return kErrorProcessFault;
}
+ rt_set_memory(process.StackReserve, 0, process.StackSize);
+
#ifdef __NE_VIRTUAL_MEMORY_SUPPORT__
flags = HAL::kMMFlagsPresent;
flags |= HAL::kMMFlagsWr;