Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 1443 → Rev 1442

/uspace/trunk/libc/generic/ipc.c
120,8 → 120,7
 
call = malloc(sizeof(*call));
if (!call) {
if (callback)
callback(private, ENOMEM, NULL);
callback(private, ENOMEM, NULL);
return;
}
128,8 → 127,7
callid = __SYSCALL4(SYS_IPC_CALL_ASYNC_FAST, phoneid, method, arg1, arg2);
if (callid == IPC_CALLRET_FATAL) {
/* Call asynchronous handler with error code */
if (callback)
callback(private, ENOENT, NULL);
callback(private, ENOENT, NULL);
free(call);
return;
}
207,8 → 205,7
 
if (callid == IPC_CALLRET_FATAL) {
futex_up(&ipc_futex);
if (call->callback)
call->callback(call->private, ENOENT, NULL);
call->callback(call->private, ENOENT, NULL);
free(call);
futex_down(&ipc_futex);
} else {
239,11 → 236,9
if (call->u.callid == callid) {
list_remove(&call->list);
futex_up(&ipc_futex);
if (call->callback)
call->callback(call->private,
IPC_GET_RETVAL(*data),
data);
free(call);
call->callback(call->private,
IPC_GET_RETVAL(*data),
data);
return;
}
}