Corinna Vinschen
9409c5335b
Don't test pthread objects for being already initialized at init time
...
For all pthread init functions, POSIX says
Results are undefined if pthread_FOO_init() is called specifying an
already initialized pthread_FOO object.
So far our pthread init functions tested the incoming object if it's
already an initialized object and, if so, returned EBUSY. That's ok
*iff* the object was already initialized. However, as the example in
https://cygwin.com/ml/cygwin/2016-04/msg00473.html shows, an uninitialized
pthread object could also accidentally look like an initialized object
and then returning EBUSY is not ok.
Consequentially, all those tests are dangerous. Per POSIX, an application
has to know what its doing when calling any of the pthread init functions
anyway, and re-initializing the object is just as well as undefined
behaviour as is returning EBUSY on already initialized objects.
* thread.cc (pthread_attr_init): Drop check for already initialized
object.
(pthread_condattr_init): Ditto.
(pthread_rwlockattr_init): Ditto.
(pthread_mutexattr_init): Ditto.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-04-20 12:31:45 +02:00
..
2014-07-14 18:16:16 +00:00
2016-04-19 23:40:53 +02:00
2016-03-20 11:51:43 +01:00
2016-03-24 16:39:15 +01:00
2016-04-04 10:25:34 -05:00
2015-10-20 12:33:13 +02:00
2016-04-18 12:09:18 +02:00
2013-04-30 23:43:08 +00:00
2013-04-23 09:44:36 +00:00
2013-11-24 12:13:36 +00:00
2012-11-23 13:22:47 +00:00
2016-03-23 11:41:26 +01:00
2013-04-23 09:44:36 +00:00
2014-11-25 11:27:12 +00:00
2015-12-03 12:38:19 +01:00
2015-11-18 20:51:12 +01:00
2016-03-29 17:39:17 +02:00
2016-04-01 13:53:25 +02:00
2016-04-04 16:39:41 +02:00
2016-04-04 16:39:41 +02:00
2014-08-11 12:03:18 +00:00
2013-01-21 04:38:31 +00:00
2016-03-23 11:58:21 +01:00
2014-08-15 13:50:53 +00:00
2014-02-10 20:15:58 +00:00
2016-04-01 14:04:09 +02:00
2016-03-12 17:56:21 +01:00
2013-01-21 04:38:31 +00:00
2016-02-13 15:59:55 +01:00
2013-04-23 09:44:36 +00:00
2015-11-27 14:39:11 +01:00
2013-01-21 04:38:31 +00:00
2015-02-23 20:51:12 +00:00
2013-01-21 04:38:31 +00:00
2013-01-21 04:38:31 +00:00
2014-03-12 17:36:56 +00:00
2015-11-27 14:39:11 +01:00
2013-01-21 04:34:52 +00:00
2015-07-29 13:32:29 +02:00
2015-10-23 14:30:40 +02:00
2015-12-02 12:11:06 +01:00
2015-11-27 14:39:11 +01:00
2016-03-20 21:59:47 +01:00
2015-10-27 16:10:37 +00:00
2014-11-26 19:46:59 +00:00
2014-04-08 14:13:59 +00:00
2013-01-21 04:38:31 +00:00
2013-01-21 04:38:31 +00:00
2016-04-01 14:04:09 +02:00
2013-01-21 04:34:52 +00:00
2016-04-01 14:04:09 +02:00
2015-04-23 21:57:12 +02:00
2016-04-15 14:51:40 +02:00
2015-04-23 21:57:12 +02:00
2014-04-26 17:38:22 +00:00
2014-08-22 09:21:33 +00:00
2015-02-11 13:15:59 +00:00
2015-07-29 13:45:46 +02:00
2013-04-23 09:44:36 +00:00
2013-01-21 04:38:31 +00:00
2016-04-01 14:04:09 +02:00
2016-04-01 13:53:25 +02:00
2016-04-01 14:04:09 +02:00
2014-12-02 10:16:03 +00:00
2014-08-15 13:50:53 +00:00
2015-07-07 20:45:06 +02:00
2016-03-24 16:39:15 +01:00
2016-04-01 14:04:09 +02:00
2016-04-05 10:30:28 +02:00
2015-11-05 18:31:36 +01:00
2016-03-30 12:55:42 +02:00
2013-12-10 21:05:23 +00:00
2016-03-20 21:59:43 +01:00
2013-10-31 14:26:42 +00:00
2016-03-20 11:55:08 +01:00
2016-04-05 10:30:28 +02:00
2013-05-01 01:20:37 +00:00
2014-05-20 10:25:32 +00:00
2013-05-01 01:20:37 +00:00
2014-08-19 08:41:40 +00:00
2012-04-04 12:45:24 +00:00
2015-08-29 09:16:47 +02:00
2016-04-05 10:30:28 +02:00
2014-10-09 13:24:37 +00:00
2014-10-09 17:45:27 +00:00
2014-10-09 13:24:37 +00:00
2016-03-18 14:46:20 +01:00
2013-10-26 13:23:54 +00:00
2015-10-22 14:22:07 +02:00
2014-10-20 14:30:35 +00:00
2016-03-24 15:55:25 +01:00
2015-02-25 17:50:13 +00:00
2016-04-05 10:30:28 +02:00
2016-03-08 13:56:40 +01:00
2016-03-08 13:56:40 +01:00
2014-10-09 13:24:37 +00:00
2015-11-27 14:39:11 +01:00
2013-10-24 17:51:41 +00:00
2016-03-20 21:59:43 +01:00
2016-04-05 19:20:10 +02:00
2015-11-27 14:39:11 +01:00
2016-04-01 14:04:09 +02:00
2016-03-24 16:39:15 +01:00
2015-11-28 11:10:41 +01:00
2012-04-02 20:41:46 +00:00
2013-07-10 20:58:33 +00:00
2015-03-03 12:58:34 +00:00
2016-04-01 13:53:25 +02:00
2016-03-24 16:39:15 +01:00
2016-03-24 16:39:15 +01:00
2015-12-16 12:25:27 +01:00
2013-08-31 10:21:48 +00:00
2013-01-21 04:38:31 +00:00
2013-06-14 09:09:41 +00:00
2013-04-23 09:44:36 +00:00
2015-10-27 16:10:37 +00:00
2016-03-29 14:43:55 +02:00
2015-12-02 12:11:06 +01:00
2013-04-23 09:44:36 +00:00
2013-04-23 09:44:36 +00:00
2014-08-27 10:44:50 +00:00
2015-11-18 19:09:47 +01:00
2015-02-26 17:27:59 +00:00
2015-02-24 20:52:57 +00:00
2015-10-27 16:10:37 +00:00
2015-04-23 21:57:08 +02:00
2016-03-30 14:35:46 +02:00
2016-04-01 13:53:25 +02:00
2014-08-14 17:36:24 +00:00
2016-03-29 14:43:55 +02:00
2016-03-24 16:39:15 +01:00
2013-06-18 09:45:37 +00:00
2016-03-18 14:46:20 +01:00
2016-03-18 14:46:20 +01:00
2015-08-17 11:05:43 +02:00
2013-04-23 09:44:36 +00:00
2013-05-21 19:04:49 +00:00
2016-03-30 17:06:50 +02:00
2013-01-21 04:38:31 +00:00
2015-12-03 13:33:43 +01:00
2016-04-01 14:04:09 +02:00
2016-02-09 15:00:30 +01:00
2015-03-03 17:09:30 +00:00
2013-08-26 16:14:40 +00:00
2016-03-24 16:39:15 +01:00
2015-08-18 13:12:07 +02:00
2013-04-23 09:44:36 +00:00
2016-04-12 15:06:05 +02:00
2016-03-09 23:10:17 +01:00
2014-08-27 09:39:44 +00:00
2015-12-16 12:25:27 +01:00
2016-04-15 14:51:40 +02:00
2016-01-27 15:39:11 +01:00
2013-04-23 09:44:36 +00:00
2016-04-05 10:30:28 +02:00
2016-01-11 12:35:41 +01:00
2016-01-11 19:10:45 +01:00
2015-12-07 16:28:22 +01:00
2015-11-27 14:39:11 +01:00
2016-03-24 16:39:15 +01:00
2016-03-24 16:39:15 +01:00
2016-02-17 10:55:28 +01:00
2013-09-25 14:44:45 +00:00
2015-04-23 22:01:53 +02:00
2015-04-23 21:57:12 +02:00
2016-03-29 13:41:11 +02:00
2014-12-02 10:49:47 +00:00
2014-12-02 10:49:47 +00:00
2013-04-23 09:44:36 +00:00
2015-07-29 13:45:46 +02:00
2014-05-20 10:21:34 +00:00
2013-04-23 09:44:36 +00:00
2016-04-19 10:23:49 +02:00
2016-03-23 17:40:24 +01:00
2016-03-12 17:56:21 +01:00
2016-03-10 10:36:00 +01:00
2016-03-08 13:56:40 +01:00
2016-04-18 20:43:00 +02:00
2016-03-12 16:39:19 +01:00
2016-03-20 21:59:47 +01:00
2016-03-20 21:59:47 +01:00
2015-03-03 17:09:30 +00:00
2014-03-28 20:34:04 +00:00
2014-10-17 14:36:59 +00:00
2014-11-27 16:49:41 +00:00
2016-03-29 12:14:18 +02:00
2016-04-05 10:30:28 +02:00
2016-04-05 10:30:28 +02:00
2014-03-17 04:41:35 +00:00
2015-07-29 13:45:46 +02:00
2016-04-01 13:53:25 +02:00
2013-04-23 09:44:36 +00:00
2013-05-22 16:55:55 +00:00
2015-07-29 13:45:46 +02:00
2016-04-01 14:04:09 +02:00
2014-08-18 18:24:06 +00:00
2016-02-18 08:20:03 -06:00
2013-04-23 09:44:36 +00:00
2013-04-23 09:44:36 +00:00
2016-04-01 14:04:09 +02:00
2016-04-04 10:25:36 -05:00
2013-04-23 09:44:36 +00:00
2013-04-23 09:44:36 +00:00
2014-11-25 11:27:12 +00:00
2013-04-23 09:44:36 +00:00
2016-04-20 12:31:45 +02:00
2016-02-13 16:03:15 +01:00
2014-08-22 09:21:33 +00:00
2016-04-05 10:30:28 +02:00
2014-08-25 14:53:49 +00:00
2014-08-25 14:53:49 +00:00
2015-07-04 22:49:30 +02:00
2015-07-04 22:49:30 +02:00
2015-04-23 21:57:07 +02:00
2015-04-23 22:04:24 +02:00
2016-03-23 17:51:03 +01:00
2015-12-07 16:28:22 +01:00
2013-07-31 15:19:18 +00:00
2015-02-24 20:52:57 +00:00
2013-04-23 09:44:36 +00:00
2016-01-08 15:17:52 +01:00
2016-03-09 23:10:17 +01:00
2016-02-18 11:22:12 +01:00
2013-11-24 12:13:36 +00:00
2015-02-11 13:15:59 +00:00
2015-02-11 13:15:59 +00:00
2013-01-21 04:34:52 +00:00
2015-11-18 22:28:33 +01:00
2016-04-01 13:53:25 +02:00
2015-02-03 13:15:49 +00:00
2015-12-07 16:10:55 +01:00
2015-12-07 16:10:55 +01:00
2016-03-29 14:43:55 +02:00