summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/arch/nt32/crt_glue.c4
-rw-r--r--src/arch/nt64/crt_glue.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/src/arch/nt32/crt_glue.c b/src/arch/nt32/crt_glue.c
index 29effe8..f65fa9b 100644
--- a/src/arch/nt32/crt_glue.c
+++ b/src/arch/nt32/crt_glue.c
@@ -44,6 +44,10 @@ void __init_tls (size_t * auxv)
T.pt.locale = &libc.global_locale;
T.pt.tid = __syscall(SYS_set_tid_address, &T.pt.tid);
+ T.pt.detach_state = DT_JOINABLE;
+ T.pt.locale = &libc.global_locale;
+ T.pt.robust_list.head = &T.pt.robust_list.head;
+
libc.can_do_threads = 1;
libc.tls_size = sizeof(struct __tls);
};
diff --git a/src/arch/nt64/crt_glue.c b/src/arch/nt64/crt_glue.c
index 29effe8..f65fa9b 100644
--- a/src/arch/nt64/crt_glue.c
+++ b/src/arch/nt64/crt_glue.c
@@ -44,6 +44,10 @@ void __init_tls (size_t * auxv)
T.pt.locale = &libc.global_locale;
T.pt.tid = __syscall(SYS_set_tid_address, &T.pt.tid);
+ T.pt.detach_state = DT_JOINABLE;
+ T.pt.locale = &libc.global_locale;
+ T.pt.robust_list.head = &T.pt.robust_list.head;
+
libc.can_do_threads = 1;
libc.tls_size = sizeof(struct __tls);
};