summaryrefslogtreecommitdiff
path: root/ext/threads
diff options
context:
space:
mode:
Diffstat (limited to 'ext/threads')
-rwxr-xr-xext/threads/threads.xs4
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/threads/threads.xs b/ext/threads/threads.xs
index 5678bcb71a..cbfcd1f0f8 100755
--- a/ext/threads/threads.xs
+++ b/ext/threads/threads.xs
@@ -281,12 +281,12 @@ BOOT:
#else
thread->thr = pthread_self();
#endif
+ SHAREDSvEDIT(threads);
thread_tid_ptr = Perl_newSVuv(PL_sharedsv_space, PTR2UV(thread->thr));
thread_ptr = Perl_newSVuv(PL_sharedsv_space, PTR2UV(thread));
- SHAREDSvEDIT(threads);
hv_store_ent((HV*) SHAREDSvGET(threads), thread_tid_ptr, thread_ptr,0);
- SHAREDSvRELEASE(threads);
SvREFCNT_dec(thread_tid_ptr);
+ SHAREDSvRELEASE(threads);
}
MUTEX_INIT(&create_mutex);