base: avoid deadlock if invalid object is called

This avoids a deadlock if during issuing a printf the low level IPC fails.
. Printf uses an address space local lock and if we are trying again
to make a printf we deadlock forever ...
This commit is contained in:
Alexander Boettcher 2013-07-09 17:12:25 +02:00 committed by Norman Feske
parent 4e47cd2568
commit 683832f461
1 changed files with 1 additions and 3 deletions

View File

@ -447,10 +447,8 @@ namespace Genode {
{
_call();
_read_from_buf(_result);
if (_result == ERR_INVALID_OBJECT) {
PERR("tried to call an invalid object");
if (_result == ERR_INVALID_OBJECT)
throw Ipc_error();
}
return *this;
}