summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/arch/nt32/crt_glue.c3
-rw-r--r--src/arch/nt32/vtbl.c2
-rw-r--r--src/arch/nt64/crt_glue.c3
-rw-r--r--src/arch/nt64/vtbl.c2
4 files changed, 10 insertions, 0 deletions
diff --git a/src/arch/nt32/crt_glue.c b/src/arch/nt32/crt_glue.c
index f65fa9b..7a33981 100644
--- a/src/arch/nt32/crt_glue.c
+++ b/src/arch/nt32/crt_glue.c
@@ -8,6 +8,7 @@
extern const struct __ldso_vtbl * __ldso_vtbl;
extern const struct __psx_vtbl * __psx_vtbl;
+extern const struct __seh_vtbl * __seh_vtbl;
static int __pthread_surrogate_init(struct pthread * self);
@@ -84,6 +85,8 @@ void __libc_entry_routine(
__syscall_vtbl = (unsigned long **)ctx.sys_vtbl;
__ldso_vtbl = ctx.ldso_vtbl;
__psx_vtbl = ctx.psx_vtbl;
+ __seh_vtbl = ctx.seh_vtbl;
+
__teb_sys_idx = ctx.teb_sys_idx;
__teb_libc_idx = ctx.teb_libc_idx;
diff --git a/src/arch/nt32/vtbl.c b/src/arch/nt32/vtbl.c
index f21ce17..7691977 100644
--- a/src/arch/nt32/vtbl.c
+++ b/src/arch/nt32/vtbl.c
@@ -5,6 +5,8 @@
const struct __ldso_vtbl * __ldso_vtbl = 0;
const struct __psx_vtbl * __psx_vtbl = 0;
+const struct __seh_vtbl * __seh_vtbl = 0;
+
unsigned long ** __syscall_vtbl = 0;
unsigned long __teb_sys_idx = 0;
unsigned long __teb_libc_idx = 0;
diff --git a/src/arch/nt64/crt_glue.c b/src/arch/nt64/crt_glue.c
index f65fa9b..7a33981 100644
--- a/src/arch/nt64/crt_glue.c
+++ b/src/arch/nt64/crt_glue.c
@@ -8,6 +8,7 @@
extern const struct __ldso_vtbl * __ldso_vtbl;
extern const struct __psx_vtbl * __psx_vtbl;
+extern const struct __seh_vtbl * __seh_vtbl;
static int __pthread_surrogate_init(struct pthread * self);
@@ -84,6 +85,8 @@ void __libc_entry_routine(
__syscall_vtbl = (unsigned long **)ctx.sys_vtbl;
__ldso_vtbl = ctx.ldso_vtbl;
__psx_vtbl = ctx.psx_vtbl;
+ __seh_vtbl = ctx.seh_vtbl;
+
__teb_sys_idx = ctx.teb_sys_idx;
__teb_libc_idx = ctx.teb_libc_idx;
diff --git a/src/arch/nt64/vtbl.c b/src/arch/nt64/vtbl.c
index f21ce17..7691977 100644
--- a/src/arch/nt64/vtbl.c
+++ b/src/arch/nt64/vtbl.c
@@ -5,6 +5,8 @@
const struct __ldso_vtbl * __ldso_vtbl = 0;
const struct __psx_vtbl * __psx_vtbl = 0;
+const struct __seh_vtbl * __seh_vtbl = 0;
+
unsigned long ** __syscall_vtbl = 0;
unsigned long __teb_sys_idx = 0;
unsigned long __teb_libc_idx = 0;