From 4d5348a49f54d95c0271c8f9c4ef01c005d6b74b Mon Sep 17 00:00:00 2001 From: Alexis211 Date: Fri, 16 Oct 2009 17:35:50 +0200 Subject: We now use a temporary stack in task management for : - deleting current thread whe it finishes - doing everything that goes with that --- Source/Kernel/SyscallManager/IDT.ns.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'Source/Kernel/SyscallManager') diff --git a/Source/Kernel/SyscallManager/IDT.ns.cpp b/Source/Kernel/SyscallManager/IDT.ns.cpp index 1a62d88..fcab741 100644 --- a/Source/Kernel/SyscallManager/IDT.ns.cpp +++ b/Source/Kernel/SyscallManager/IDT.ns.cpp @@ -74,9 +74,9 @@ extern "C" void interrupt_handler(registers_t regs) { doSwitch = doSwitch or Task::IRQwakeup(regs.int_no - 32); } if (regs.int_no == 66) { //This syscall signals to kernel that thread ended. - Task::currentThreadExits(regs.eax); + Task::currentThreadExits(regs.eax); //DO NOT COUNT ON COMMING BACK FROM HERE } - if (doSwitch) Task::doSwitch(); //DO NEVER COUNT ON COMMING BACK FROM HERE + if (doSwitch) Task::doSwitch(); //DO NOT COUNT ON COMMING BACK FROM HERE EITHER } namespace IDT { -- cgit v1.2.3