From: pbrook Date: Wed, 1 Nov 2006 01:44:16 +0000 (+0000) Subject: Remove FD on close. X-Git-Tag: release_0_9_1~1688 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=eb52d364380fee67258f1b3ccf759f7f52ca72fd;p=qemu-xen-4.4-testing.git Remove FD on close. --- diff --git a/vl.c b/vl.c index d047eb420..447da38a9 100644 --- a/vl.c +++ b/vl.c @@ -1228,6 +1228,11 @@ static void fd_chr_read(void *opaque) if (len == 0) return; size = read(s->fd_in, buf, len); + if (size == 0) { + /* FD has been closed. Remove it from the active list. */ + qemu_set_fd_handler2(s->fd_in, NULL, NULL, NULL, NULL); + return; + } if (size > 0) { s->fd_read(s->fd_opaque, buf, size); }