From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49512) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ae4N2-0002NW-Id for qemu-devel@nongnu.org; Thu, 10 Mar 2016 12:27:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ae4My-0001jE-TB for qemu-devel@nongnu.org; Thu, 10 Mar 2016 12:27:32 -0500 Received: from mx1.redhat.com ([209.132.183.28]:38521) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ae4My-0001in-O8 for qemu-devel@nongnu.org; Thu, 10 Mar 2016 12:27:28 -0500 From: "Daniel P. Berrange" Date: Thu, 10 Mar 2016 17:26:56 +0000 Message-Id: <1457630825-26638-10-git-send-email-berrange@redhat.com> In-Reply-To: <1457630825-26638-1-git-send-email-berrange@redhat.com> References: <1457630825-26638-1-git-send-email-berrange@redhat.com> Subject: [Qemu-devel] [PATCH v2 09/18] io: pass HANDLE to g_source_add_poll on Win32 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Paolo Bonzini , Andrew Baumann , Stefan Weil From: Paolo Bonzini Reviewed-by: Daniel P. Berrange Signed-off-by: Paolo Bonzini --- io/channel-watch.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/io/channel-watch.c b/io/channel-watch.c index 931fa4d..5373605 100644 --- a/io/channel-watch.c +++ b/io/channel-watch.c @@ -160,7 +160,11 @@ GSource *qio_channel_create_fd_watch(QIOChannel *ioc, ssource->condition = condition; +#ifdef CONFIG_WIN32 + ssource->fd.fd = (gint64)_get_osfhandle(fd); +#else ssource->fd.fd = fd; +#endif ssource->fd.events = condition; g_source_add_poll(source, &ssource->fd); @@ -186,10 +190,15 @@ GSource *qio_channel_create_fd_pair_watch(QIOChannel *ioc, ssource->condition = condition; +#ifdef CONFIG_WIN32 + ssource->fdread.fd = (gint64)_get_osfhandle(fdread); + ssource->fdwrite.fd = (gint64)_get_osfhandle(fdwrite); +#else ssource->fdread.fd = fdread; - ssource->fdread.events = condition & G_IO_IN; - ssource->fdwrite.fd = fdwrite; +#endif + + ssource->fdread.events = condition & G_IO_IN; ssource->fdwrite.events = condition & G_IO_OUT; g_source_add_poll(source, &ssource->fdread); -- 2.5.0