projects
/
ghc-hetmet.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
4caf355
)
add locking in mkWeakForeignEnv#
author
Simon Marlow
<marlowsd@gmail.com>
Tue, 8 Dec 2009 10:12:29 +0000
(10:12 +0000)
committer
Simon Marlow
<marlowsd@gmail.com>
Tue, 8 Dec 2009 10:12:29 +0000
(10:12 +0000)
rts/PrimOps.cmm
patch
|
blob
|
history
diff --git
a/rts/PrimOps.cmm
b/rts/PrimOps.cmm
index
b88ca7a
..
b4dfb6d
100644
(file)
--- a/
rts/PrimOps.cmm
+++ b/
rts/PrimOps.cmm
@@
-377,8
+377,10
@@
stg_mkWeakForeignEnvzh
StgWeak_finalizer(w) = stg_NO_FINALIZER_closure;
StgWeak_cfinalizer(w) = p;
+ ACQUIRE_LOCK(sm_mutex);
StgWeak_link(w) = W_[weak_ptr_list];
W_[weak_ptr_list] = w;
+ RELEASE_LOCK(sm_mutex);
IF_DEBUG(weak, foreign "C" debugBelch(stg_weak_msg,w) []);