core: always release Irq_proxy startup lock

Prior this patch the startup lock was not released if the call of
'_associate()' failed. In this condition, the caller of the constructor
was infinitely blocked.
This commit is contained in:
Norman Feske 2013-01-31 10:08:30 +01:00
parent 7868156b19
commit 622959ede4

View File

@ -154,10 +154,12 @@ class Genode::Irq_proxy : public THREAD,
*/ */
void entry() void entry()
{ {
if (_associate()) { bool const associate_suceeded = _associate();
_startup_lock.unlock();
_startup_lock.unlock();
if (associate_suceeded)
_loop(); _loop();
}
} }
/** /**