From 90ab65f8c732e83bd99a1621e38a4e690c71e95d Mon Sep 17 00:00:00 2001 From: Denis Krjuchkov Date: Sun, 13 Jan 2013 15:30:53 +0600 Subject: WakeFD.cxx: use two sockets instead of pipe on Win32 Pipes aren't really pollable on Windows. GLib emulates polling on pipes using separate reader/writer threads. This adds significant overhead and keeps a strong dependency on GLib. socketpair() function is absent on Windows as well. We implement it here in a loose way. --- src/GlobalEvents.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/GlobalEvents.cxx') diff --git a/src/GlobalEvents.cxx b/src/GlobalEvents.cxx index 664803ca3..e4f335c9e 100644 --- a/src/GlobalEvents.cxx +++ b/src/GlobalEvents.cxx @@ -78,7 +78,7 @@ GlobalEvents::Initialize() #ifndef G_OS_WIN32 GIOChannel *channel = g_io_channel_unix_new(wake_fd.Get()); #else - GIOChannel *channel = g_io_channel_win32_new_fd(wake_fd.Get()); + GIOChannel *channel = g_io_channel_win32_new_socket(wake_fd.Get()); #endif source_id = g_io_add_watch(channel, G_IO_IN, -- cgit v1.2.3