KERNEL - mini_senda simplification

This commit is contained in:
Tomas Hruby 2011-11-04 18:25:27 +00:00 committed by Tomas Hruby
parent e4d46a2146
commit c82a5dd3e3

View File

@ -1184,21 +1184,18 @@ PRIVATE int mini_senda(struct proc *caller_ptr, asynmsg_t *table, size_t size)
set_sys_bit(priv(dst_ptr)->s_asyn_pending, set_sys_bit(priv(dst_ptr)->s_asyn_pending,
priv(caller_ptr)->s_id); priv(caller_ptr)->s_id);
pending_recv = TRUE; pending_recv = TRUE;
done = FALSE;
continue;
} }
if (!pending_recv) flags |= AMF_DONE; /* Done handling message */
/* Store results */ /* Store results */
tabent.result = r; tabent.result = r;
tabent.flags = flags; tabent.flags = flags | AMF_DONE;
if (flags & AMF_DONE) { if (flags & AMF_NOTIFY)
if (flags & AMF_NOTIFY) do_notify = TRUE;
do_notify = TRUE; else if (r != OK && (flags & AMF_NOTIFY_ERR))
else if (r != OK && (flags & AMF_NOTIFY_ERR)) do_notify = TRUE;
do_notify = TRUE; A_INSRT(i); /* Copy results to caller */
A_INSRT(i); /* Copy results to caller */
} else
done = FALSE;
} }
if (do_notify) if (do_notify)