summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authorjmcneill <jmcneill@pkgsrc.org>2008-06-28 00:12:40 +0000
committerjmcneill <jmcneill@pkgsrc.org>2008-06-28 00:12:40 +0000
commita72b1fa5ce049550813ce8606bd11137d040ede5 (patch)
tree5bd59b50665bc97492a1fa0c6681890dfd41dd29 /emulators
parentef04a1530ce079d0b1f4139af3e77e86448c4005 (diff)
downloadpkgsrc-a72b1fa5ce049550813ce8606bd11137d040ede5.tar.gz
Fix exception handling on i386.
Diffstat (limited to 'emulators')
-rw-r--r--emulators/wine/patches/patch-af16
1 files changed, 8 insertions, 8 deletions
diff --git a/emulators/wine/patches/patch-af b/emulators/wine/patches/patch-af
index 39cf8aaa84d..1275123ae53 100644
--- a/emulators/wine/patches/patch-af
+++ b/emulators/wine/patches/patch-af
@@ -1,8 +1,8 @@
-$NetBSD: patch-af,v 1.24 2008/06/22 23:38:18 dholland Exp $
+$NetBSD: patch-af,v 1.25 2008/06/28 00:12:40 jmcneill Exp $
--- dlls/ntdll/signal_i386.c.orig 2008-06-17 10:07:31.000000000 -0400
-+++ dlls/ntdll/signal_i386.c 2008-06-22 13:19:30.000000000 -0400
-@@ -199,7 +199,7 @@ typedef struct trapframe SIGCONTEXT;
++++ dlls/ntdll/signal_i386.c 2008-06-27 18:35:37.000000000 -0400
+@@ -199,7 +199,7 @@
#endif /* bsdi */
@@ -11,7 +11,7 @@ $NetBSD: patch-af,v 1.24 2008/06/22 23:38:18 dholland Exp $
typedef struct sigcontext SIGCONTEXT;
-@@ -332,6 +332,39 @@ typedef ucontext_t SIGCONTEXT;
+@@ -332,6 +332,39 @@
#endif /* __APPLE__ */
@@ -29,7 +29,7 @@ $NetBSD: patch-af,v 1.24 2008/06/22 23:38:18 dholland Exp $
+#define ESI_sig(context) ((context)->uc_mcontext.__gregs[_REG_ESI])
+#define EDI_sig(context) ((context)->uc_mcontext.__gregs[_REG_EDI])
+#define EBP_sig(context) ((context)->uc_mcontext.__gregs[_REG_EBP])
-+#define ESP_sig(context) (*((unsigned long*)&(context)->uc_mcontext.__gregs[_REG_ESP]))
++#define ESP_sig(context) _UC_MACHINE_SP(context)
+
+#define CS_sig(context) ((context)->uc_mcontext.__gregs[_REG_CS])
+#define DS_sig(context) ((context)->uc_mcontext.__gregs[_REG_DS])
@@ -39,7 +39,7 @@ $NetBSD: patch-af,v 1.24 2008/06/22 23:38:18 dholland Exp $
+#define GS_sig(context) ((context)->uc_mcontext.__gregs[_REG_GS])
+
+#define EFL_sig(context) ((context)->uc_mcontext.__gregs[_REG_EFL])
-+#define EIP_sig(context) (*((unsigned long*)&(context)->uc_mcontext.__gregs[_REG_EIP]))
++#define EIP_sig(context) _UC_MACHINE_PC(context)
+#define TRAP_sig(context) ((context)->uc_mcontext.__gregs[_REG_TRAPNO])
+#define ERROR_sig(context) ((context)->uc_mcontext.__gregs[_REG_ERR])
+
@@ -51,7 +51,7 @@ $NetBSD: patch-af,v 1.24 2008/06/22 23:38:18 dholland Exp $
WINE_DEFAULT_DEBUG_CHANNEL(seh);
typedef int (*wine_signal_handler)(unsigned int sig);
-@@ -366,8 +399,13 @@ enum i386_trap_code
+@@ -366,8 +399,13 @@
TRAP_x86_PAGEFLT = T_PAGEFLT, /* Page fault */
TRAP_x86_ARITHTRAP = T_ARITHTRAP, /* Floating point exception */
TRAP_x86_ALIGNFLT = T_ALIGNFLT, /* Alignment check exception */
@@ -65,7 +65,7 @@ $NetBSD: patch-af,v 1.24 2008/06/22 23:38:18 dholland Exp $
#else
TRAP_x86_DIVIDE = 0, /* Division by zero exception */
TRAP_x86_TRCTRAP = 1, /* Single-step exception */
-@@ -1561,7 +1599,11 @@ BOOL SIGNAL_Init(void)
+@@ -1561,7 +1599,11 @@
#endif /* HAVE_SIGALTSTACK */
sig_act.sa_mask = server_block_set;