diff options
author | Tor Lillqvist <tml@iki.fi> | 2002-08-31 18:06:02 +0000 |
---|---|---|
committer | Tor Lillqvist <tml@src.gnome.org> | 2002-08-31 18:06:02 +0000 |
commit | a0c80fcc67fbdf576d80536db299433cd70ca3f8 (patch) | |
tree | 1b6b19894fbb9284e3cda97070d2b91bcb2db60d /gdk/win32 | |
parent | 732c20523692251af6875a34b5a0fe62a5dfc9b8 (diff) | |
download | gtk+-a0c80fcc67fbdf576d80536db299433cd70ca3f8.tar.gz |
On Cygwin, open /dev/windows instead of using the magic G_WIN32_MSG_HANDLE
2002-08-31 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (_gdk_events_init): On Cygwin, open
/dev/windows instead of using the magic G_WIN32_MSG_HANDLE fd that
is implemented (in GLib) only on native Win32. (#91683, Masahiro
Sakai)
Diffstat (limited to 'gdk/win32')
-rw-r--r-- | gdk/win32/gdkevents-win32.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gdk/win32/gdkevents-win32.c b/gdk/win32/gdkevents-win32.c index 45acf299d3..0b3bbbdeec 100644 --- a/gdk/win32/gdkevents-win32.c +++ b/gdk/win32/gdkevents-win32.c @@ -44,6 +44,11 @@ #include "gdkinput-win32.h" #include "gdkkeysyms.h" +#ifdef G_WITH_CYGWIN +#include <fcntl.h> +#include <errno.h> +#endif + #include <objbase.h> #if defined (__GNUC__) && defined (HAVE_DIMM_H) @@ -303,7 +308,13 @@ _gdk_events_init (void) source = g_source_new (&event_funcs, sizeof (GSource)); g_source_set_priority (source, GDK_PRIORITY_EVENTS); +#ifdef G_WITH_CYGWIN + event_poll_fd.fd = open ("/dev/windows", O_RDONLY); + if (event_poll_fd.fd == -1) + g_error ("can't open \"/dev/windows\": %s", g_strerror (errno)); +#else event_poll_fd.fd = G_WIN32_MSG_HANDLE; +#endif event_poll_fd.events = G_IO_IN; g_source_add_poll (source, &event_poll_fd); |