selection: async send: handle POLLHUP

This commit is contained in:
Daniel Eklöf 2019-11-05 08:40:39 +01:00
parent 1207ad1502
commit 9cd22dc398
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F

View file

@ -328,8 +328,10 @@ 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:
@ -345,6 +347,7 @@ fdm_send(struct fdm *fdm, int fd, int events, void *data)
break;
}
done:
fdm_del(fdm, fd);
free(ctx->data);
free(ctx);