summaryrefslogtreecommitdiff
path: root/ext/Thread/Thread.xs
diff options
context:
space:
mode:
authorDrago Goricanec <drago@raptor.otsd.ts.fujitsu.co.jp>1998-09-08 02:36:09 +0900
committerGurusamy Sarathy <gsar@cpan.org>1998-09-23 09:38:18 +0000
commitd3ef56684fd202c15842c6bd3b39ec9be6eae9b7 (patch)
tree7b2dcbf3a63692e39cda7f1a6a74f912e84d8131 /ext/Thread/Thread.xs
parent495c5fdc8fec0d7d0f72a84d44bb3e7cfc448d43 (diff)
downloadperl-d3ef56684fd202c15842c6bd3b39ec9be6eae9b7.tar.gz
Thread::cond_wait bug in 5.005.51 causes deadlock
Message-Id: <199809070836.RAA14631@raptor.otsd.ts.fujitsu.co.jp> p4raw-id: //depot/perl@1839
Diffstat (limited to 'ext/Thread/Thread.xs')
-rw-r--r--ext/Thread/Thread.xs1
1 files changed, 1 insertions, 0 deletions
diff --git a/ext/Thread/Thread.xs b/ext/Thread/Thread.xs
index 48f8aa03fc..a4bff69a9b 100644
--- a/ext/Thread/Thread.xs
+++ b/ext/Thread/Thread.xs
@@ -483,6 +483,7 @@ CODE:
croak("cond_wait for lock that we don't own\n");
}
MgOWNER(mg) = 0;
+ COND_SIGNAL(MgOWNERCONDP(mg));
COND_WAIT(MgCONDP(mg), MgMUTEXP(mg));
while (MgOWNER(mg))
COND_WAIT(MgOWNERCONDP(mg), MgMUTEXP(mg));