diff --git a/selection.c b/selection.c index bd9d76fb..9dddf365 100644 --- a/selection.c +++ b/selection.c @@ -328,11 +328,11 @@ struct clipboard_send { static bool fdm_send(struct fdm *fdm, int fd, int events, void *data) { + struct clipboard_send *ctx = data; + if (events & EPOLLHUP) goto done; - struct clipboard_send *ctx = data; - switch (async_write(fd, ctx->data, ctx->len, &ctx->idx)) { case ASYNC_WRITE_REMAIN: return true;