don't closeMutex() the Capability lock
authorSimon Marlow <simonmar@microsoft.com>
Thu, 31 Aug 2006 08:57:28 +0000 (08:57 +0000)
committerSimon Marlow <simonmar@microsoft.com>
Thu, 31 Aug 2006 08:57:28 +0000 (08:57 +0000)
commitafdbaf48894b74eee5b6cc5c17c477d9e517f389
treefc6008cfd638e2df8a742a64cf5e4e1d1dfcafbe
parentc9c5430453f73208fa5d516a39cbbdd784444441
don't closeMutex() the Capability lock
There might be threads in foreign calls that will attempt to return
via resumeThread() and grab this lock, so we can't safely destroy it.

Fixes one cause of

   internal error: ASSERTION FAILED: file Capability.c, line 90

although I haven't repeated that assertion failure in the wild, only
with a specially crafted test case, so I can't be sure I really got
it.
rts/Capability.c