client: Don't abort when sending a request fails
Instead, set a fatal display error which will let an application using libwayland-client shutdown cleanly. Signed-off-by: Manuel Stoeckl <code@mstoeckl.com>
This commit is contained in:
parent
6265dd4f07
commit
8a831ac6ec
|
@ -745,14 +745,19 @@ wl_proxy_marshal_array_constructor_versioned(struct wl_proxy *proxy,
|
|||
}
|
||||
|
||||
closure = wl_closure_marshal(&proxy->object, opcode, args, message);
|
||||
if (closure == NULL)
|
||||
wl_abort("Error marshalling request: %s\n", strerror(errno));
|
||||
if (closure == NULL) {
|
||||
wl_log("Error marshalling request: %s\n", strerror(errno));
|
||||
display_fatal_error(proxy->display, errno);
|
||||
goto err_unlock;
|
||||
}
|
||||
|
||||
if (debug_client)
|
||||
wl_closure_print(closure, &proxy->object, true);
|
||||
|
||||
if (wl_closure_send(closure, proxy->display->connection))
|
||||
wl_abort("Error sending request: %s\n", strerror(errno));
|
||||
if (wl_closure_send(closure, proxy->display->connection)) {
|
||||
wl_log("Error sending request: %s\n", strerror(errno));
|
||||
display_fatal_error(proxy->display, errno);
|
||||
}
|
||||
|
||||
wl_closure_destroy(closure);
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user