Ryan Lortie 541693f42d winxp threads: fix some condition variable races
There are some races in the condition variable emulation code for
Windows XP with respect to timeouts while waiting.

First, in the event of a timeout, we never remove the waiter from the
condition variable.  This can cause crashes later.  That problem was
found by Rodrigo Rivas Costa.

Second, if the waiting thread times out and exits just as we were about
to call SetEvent() on its waiter event, we could end up trying to access
the waiter after it was closed/freed.  We need to hold on to the lock a
little bit longer to ensure that that's not possible.

https://bugzilla.gnome.org/show_bug.cgi?id=666551
2011-12-19 17:40:08 -05:00
..
2011-05-28 14:29:08 -04:00
2011-12-16 09:51:16 -05:00
2011-06-12 16:17:30 -04:00
2011-05-23 00:21:06 -04:00
2011-12-13 23:01:51 -05:00
2011-10-12 00:25:38 -04:00
2011-12-13 23:01:51 -05:00
2011-10-12 00:25:38 -04:00
2011-10-12 00:25:38 -04:00
2011-09-05 11:39:04 -04:00
2011-10-12 00:25:38 -04:00
2011-08-29 14:49:32 -04:00
2011-10-17 17:01:36 -04:00
2011-11-12 21:54:42 -05:00
2011-10-12 00:25:38 -04:00
2011-11-12 21:54:42 -05:00
2011-10-12 00:25:38 -04:00
2011-10-12 00:25:38 -04:00
2011-12-10 14:09:54 -05:00
2011-10-12 00:25:38 -04:00
2011-11-12 21:54:42 -05:00
2011-10-12 00:25:38 -04:00
2011-10-01 23:03:09 -04:00
2011-10-12 00:25:38 -04:00
2011-10-16 21:41:15 -04:00
2011-12-13 23:01:51 -05:00
2011-10-12 00:25:38 -04:00
2011-12-13 23:01:51 -05:00
2011-12-13 23:01:51 -05:00
2011-10-24 13:29:17 -04:00
2011-10-12 00:25:38 -04:00
2011-12-13 23:01:51 -05:00
2011-10-12 00:25:38 -04:00
2011-12-13 23:01:51 -05:00
2011-08-15 03:54:35 -04:00
2011-10-15 17:44:45 -04:00
2011-12-13 23:01:51 -05:00
2011-11-16 09:10:45 +01:00
2011-05-28 23:27:24 -04:00
2011-09-09 16:05:55 -04:00
2011-12-13 23:01:51 -05:00
2011-12-13 23:01:51 -05:00
2010-07-07 19:34:35 -04:00
2011-12-16 09:51:16 -05:00
2011-06-09 11:15:40 -04:00
2011-10-12 00:25:38 -04:00
2011-10-12 00:25:38 -04:00
2011-12-13 23:01:51 -05:00
2011-12-13 23:01:51 -05:00
2011-10-08 19:02:06 -04:00
2011-10-12 00:25:38 -04:00
2011-10-04 17:32:53 -04:00
2011-10-12 00:25:38 -04:00
2011-12-13 23:01:51 -05:00
2011-10-12 00:25:38 -04:00
2011-06-09 11:15:40 -04:00
2011-10-12 00:25:38 -04:00
2011-02-01 16:18:02 -02:00
2011-10-12 00:25:38 -04:00
2010-09-13 16:52:51 +02:00
2011-12-13 23:01:51 -05:00
2011-06-08 23:44:39 -04:00
2011-10-12 00:25:38 -04:00
2011-07-22 15:47:24 +02:00
2011-05-03 07:07:41 -04:00
2011-10-12 00:25:38 -04:00
2011-10-12 00:25:38 -04:00
2011-12-16 09:51:16 -05:00
2011-12-16 09:51:16 -05:00
2011-10-17 02:14:39 -04:00
2011-10-12 00:25:38 -04:00
2011-10-12 00:25:38 -04:00
2011-12-13 23:01:51 -05:00
2011-12-13 23:01:51 -05:00
2011-01-21 16:30:19 -05:00
2011-10-12 00:25:38 -04:00
2011-05-31 13:10:28 -04:00
2011-10-12 00:25:38 -04:00
2011-11-14 21:22:37 -05:00
2011-10-12 00:25:38 -04:00
2011-11-12 21:54:42 -05:00
2011-10-12 00:25:38 -04:00
2011-12-13 23:01:51 -05:00
2011-12-13 23:01:51 -05:00
2011-12-13 23:01:51 -05:00
2011-08-29 14:49:32 -04:00
2011-10-02 00:08:54 -04:00
2011-10-12 00:25:38 -04:00
2011-12-13 23:01:51 -05:00
2011-10-12 00:25:38 -04:00
2011-12-13 23:01:51 -05:00
2011-12-13 23:01:51 -05:00
2011-10-15 17:00:56 -04:00
2011-10-15 17:00:56 -04:00
2011-10-12 00:25:38 -04:00
2011-10-12 00:25:38 -04:00
2011-10-12 00:25:38 -04:00
2011-11-29 22:16:53 -05:00
2011-10-12 00:25:38 -04:00
2010-09-03 20:38:30 -04:00
2011-01-21 16:30:19 -05:00
2011-12-10 21:49:10 -05:00
2011-01-21 16:30:19 -05:00
2011-07-14 16:55:35 -04:00
2011-11-12 21:54:42 -05:00
2011-10-12 00:25:38 -04:00
2011-10-19 21:03:43 -04:00
2011-10-12 00:25:38 -04:00
2011-11-21 11:33:21 -05:00
2011-10-02 22:33:10 -04:00
2011-08-29 14:49:32 -04:00
2011-11-12 21:54:42 -05:00
2011-10-16 17:01:26 -04:00
2011-09-05 19:00:11 -04:00
2011-10-04 15:31:49 -04:00
2010-12-03 14:41:06 -05:00
2010-09-11 12:08:32 +03:00