mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-20 22:23:16 +00:00
0f05fa6fd4
This commit eliminates the mutual interlaced taking of destruction lock, list lock and weak pointer locks that could lead to a dead-lock situation when a lock pointer was tried to construct while a weak object is in destruction progress. Now, all weak pointers are invalidated and dequeued at the very beginning of the weak object's destruction. Moreover, before a weak pointer gets invalidated during destruction of a weak object, it gets dequeued, and the list lock is freed again to avoid the former dead-lock. Fix #1607 |
||
---|---|---|
.. | ||
doc | ||
include | ||
lib | ||
mk | ||
ports | ||
run | ||
src |