xwayland: using %m in wlr_log is broken, use wlr_log_errno instead

This one was awful to track down, but calls to `wlr_log` with %m have
the errno masked by the `isatty` call in `log_stderr`. Switch them to
`wlr_log_errno` instead.

Cue quality "how can read(2) POSSIBLY be returning ENOTTY?" moments.
This commit is contained in:
Tudor Brindus 2020-10-10 22:58:57 -04:00 committed by Simon Ser
parent ec3f432bbb
commit ab80ad902e

View file

@ -92,7 +92,7 @@ static int xwm_data_source_read(int fd, uint32_t mask, void *data) {
size_t available = transfer->source_data.alloc - current; size_t available = transfer->source_data.alloc - current;
ssize_t len = read(fd, p, available); ssize_t len = read(fd, p, available);
if (len == -1) { if (len == -1) {
wlr_log(WLR_ERROR, "read error from data source: %m"); wlr_log_errno(WLR_ERROR, "read error from data source");
goto error_out; goto error_out;
} }
@ -289,7 +289,7 @@ static void xwm_selection_send_data(struct wlr_xwm_selection *selection,
int p[2]; int p[2];
if (pipe(p) == -1) { if (pipe(p) == -1) {
wlr_log(WLR_ERROR, "pipe() failed: %m"); wlr_log_errno(WLR_ERROR, "pipe() failed");
xwm_selection_send_notify(selection->xwm, req, false); xwm_selection_send_notify(selection->xwm, req, false);
return; return;
} }