Tor Lillqvist
605682521b
Rework the g_poll() implementation on Windows to match poll() semantics
...
2008-08-21 Tor Lillqvist <tml@novell.com>
* glib/gmain.c: Rework the g_poll() implementation on Windows to
match poll() semantics more closely. This makes the test program
in bug #468910 behave better and doesn't seem to break anything
else.
If polling several GPollFDs, i.e. messages and/or waitable
handles, first check if one or several of them are in the
signalled state right away, and return indication for all that are
in that case.
If not, then poll with timeout and indicate only the single one
that the Win32 wait function tells us as before.
Remove unnecessary ifdefs, as we always have G_MAIN_POLL_DEBUG
defined on Windows.
Initialise g_main_poll_debug in g_main_context_new() so we have it
before testing it in one case.
Don't add several copies of a handle in the array of handles to
wait for. The documentation says this is not allowed, although it
did seem to work fine in practise. But do as the documentations
says anyway.
svn path=/trunk/; revision=7375
2008-08-21 02:27:13 +00:00
..
2007-01-03 11:22:36 +00:00
2008-06-22 15:10:51 +00:00
2008-06-22 15:10:51 +00:00
2008-07-06 04:25:18 +00:00
2008-07-25 13:49:00 +00:00
2007-11-21 20:09:46 +00:00
2007-08-08 22:06:47 +00:00
2008-05-05 15:02:15 +00:00
2006-01-25 15:51:43 +00:00
2008-05-05 15:02:15 +00:00
2008-02-23 05:06:18 +00:00
2008-05-05 15:02:15 +00:00
2008-05-14 12:05:24 +00:00
2008-05-05 15:02:15 +00:00
2006-09-10 05:50:50 +00:00
2008-05-05 15:02:15 +00:00
2007-11-23 17:58:00 +00:00
2008-05-05 15:02:15 +00:00
2008-07-21 13:05:24 +00:00
2008-05-05 15:02:15 +00:00
2003-09-07 22:36:58 +00:00
2005-11-01 18:10:31 +00:00
2008-05-05 15:02:15 +00:00
2008-06-22 15:10:51 +00:00
2008-06-15 00:03:54 +00:00
2006-04-18 02:21:43 +00:00
2008-05-05 15:02:15 +00:00
2008-07-27 17:15:16 +00:00
2008-05-05 15:02:15 +00:00
2007-06-17 07:43:34 +00:00
2008-05-05 15:02:15 +00:00
2008-05-05 15:02:15 +00:00
2007-11-25 06:05:06 +00:00
2008-05-05 15:02:15 +00:00
2007-05-17 16:36:53 +00:00
2008-07-27 17:15:16 +00:00
2008-05-05 15:02:15 +00:00
2008-04-08 02:59:05 +00:00
2005-11-04 22:27:04 +00:00
2008-08-01 18:30:37 +00:00
2008-06-16 16:41:01 +00:00
2008-07-27 17:15:16 +00:00
2008-05-05 15:02:15 +00:00
2008-06-10 17:03:15 +00:00
2008-05-05 15:02:15 +00:00
2007-09-19 20:36:53 +00:00
2008-05-05 15:02:15 +00:00
2008-08-12 19:01:46 +00:00
2008-07-18 18:14:04 +00:00
2008-06-16 16:53:58 +00:00
2008-07-28 00:24:14 +00:00
2008-06-16 16:53:58 +00:00
2008-08-20 01:30:31 +00:00
2008-06-16 16:53:58 +00:00
2008-05-05 15:02:15 +00:00
2001-11-18 00:38:48 +00:00
2008-05-05 15:02:15 +00:00
2005-07-08 23:04:06 +00:00
2008-07-28 16:52:15 +00:00
2008-05-20 13:03:15 +00:00
2008-06-12 03:55:32 +00:00
2008-05-05 15:02:15 +00:00
2008-06-11 07:37:45 +00:00
2008-08-21 02:27:13 +00:00
2008-07-28 00:24:14 +00:00
2007-08-20 23:34:35 +00:00
2008-05-05 15:02:15 +00:00
2008-08-08 16:53:26 +00:00
2008-07-28 16:52:15 +00:00
2008-01-31 11:44:51 +00:00
2008-05-05 15:02:15 +00:00
2007-12-10 14:07:42 +00:00
2008-05-05 15:02:15 +00:00
2008-04-08 02:59:05 +00:00
2008-01-28 04:50:12 +00:00
2008-05-05 15:02:15 +00:00
2008-06-16 09:25:57 +00:00
2008-05-05 15:02:15 +00:00
2005-09-20 11:20:23 +00:00
2008-05-05 15:02:15 +00:00
2005-03-14 04:26:57 +00:00
2008-05-05 15:02:15 +00:00
2007-08-22 19:31:27 +00:00
2008-03-14 19:30:38 +00:00
2004-07-21 17:51:28 +00:00
2005-03-14 04:26:57 +00:00
2008-05-05 15:02:15 +00:00
2008-05-05 15:02:15 +00:00
2007-03-06 18:43:10 +00:00
2008-05-05 15:02:15 +00:00
2006-05-10 00:44:50 +00:00
2008-05-05 15:02:15 +00:00
2008-06-16 16:53:58 +00:00
2008-05-05 15:02:15 +00:00
2008-07-28 00:24:14 +00:00
2008-05-05 15:02:15 +00:00
2007-03-16 10:28:13 +00:00
2008-05-05 15:02:15 +00:00
2008-04-08 02:59:05 +00:00
2008-02-10 04:41:25 +00:00
2008-05-05 15:02:15 +00:00
2008-06-16 16:53:58 +00:00
2008-05-05 15:02:15 +00:00
2008-07-24 00:50:08 +00:00
2008-05-05 15:02:15 +00:00
2008-03-10 16:50:13 +00:00
2008-05-05 15:02:15 +00:00
2008-08-04 18:46:59 +00:00
2008-08-04 18:46:59 +00:00
2008-06-11 06:57:22 +00:00
2008-05-05 15:02:15 +00:00
2008-07-30 15:35:01 +00:00
2008-05-29 18:05:26 +00:00
2008-07-18 18:14:04 +00:00
2008-07-18 18:14:04 +00:00
2008-01-18 09:41:46 +00:00
2008-05-05 15:02:15 +00:00
2007-12-20 15:35:21 +00:00
2008-04-08 02:22:37 +00:00
2008-08-15 10:44:57 +00:00
2008-05-05 15:02:15 +00:00
2007-10-21 17:01:29 +00:00
2008-06-20 11:29:25 +00:00
2006-12-17 20:27:02 +00:00
2008-05-05 15:02:15 +00:00
2007-05-17 16:36:53 +00:00
2008-07-28 00:24:14 +00:00
2008-05-05 15:02:15 +00:00
2006-01-25 15:51:43 +00:00
2008-05-05 15:02:15 +00:00
2008-08-04 18:48:01 +00:00
2005-03-14 04:26:57 +00:00
2008-04-08 02:59:05 +00:00
2008-04-08 02:59:05 +00:00
2008-05-05 15:02:15 +00:00
2007-07-19 13:46:05 +00:00
2008-06-11 19:38:35 +00:00
2006-07-19 22:35:17 +00:00
2008-08-05 01:23:16 +00:00
2006-07-19 22:35:17 +00:00
2008-07-04 18:05:13 +00:00
2008-06-22 16:32:18 +00:00
2008-05-05 15:02:15 +00:00
2008-08-11 19:03:04 +00:00
2008-07-27 17:15:16 +00:00
2008-05-05 15:02:15 +00:00
2008-07-27 17:15:16 +00:00
2008-05-05 15:02:15 +00:00
2008-07-28 00:24:14 +00:00
2008-06-13 08:05:33 +00:00
2008-07-27 17:15:16 +00:00
2008-02-06 17:35:25 +00:00
2008-04-03 14:59:39 +00:00