From 65d7b9312b41b9c1de3df2c764d8a556e3e56d40 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Sun, 6 Nov 2011 12:53:20 +0000 Subject: [PATCH] x86: Also set iframe::orig_{eax,edx} in TRAP_ERRC(). This makes get_iframe_registers() in arch_user_debugger.cpp return the correct eax/edx values also when the kernel was entered via an exception that doesn't push an error code (e.g. page fault). Fixes incorrect eax and edx values shown in Debugger and variable values based on them. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43201 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/system/kernel/arch/x86/arch_interrupts.S | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/system/kernel/arch/x86/arch_interrupts.S b/src/system/kernel/arch/x86/arch_interrupts.S index dca676c8cc..558b132372 100644 --- a/src/system/kernel/arch/x86/arch_interrupts.S +++ b/src/system/kernel/arch/x86/arch_interrupts.S @@ -194,8 +194,8 @@ .align 8; \ FUNCTION(name): \ pushl $vector; \ - pushl $-1; \ - pushl $-1; \ + pushl %edx; \ + pushl %eax; \ jmp int_bottom; \ FUNCTION_END(name)