summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/thread.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2006-03-22 12:52:26 +0000
committerCorinna Vinschen <corinna@vinschen.de>2006-03-22 12:52:26 +0000
commit69769b7cb50c9b0dc1f6921bc76b94a2558595ff (patch)
treeabeba50d952e38789325ceadaf2b3d64525b54f9 /winsup/cygwin/thread.cc
parentb40d2db7b0586446730dfc0977976c3df9142457 (diff)
downloadcygnal-69769b7cb50c9b0dc1f6921bc76b94a2558595ff.tar.gz
cygnal-69769b7cb50c9b0dc1f6921bc76b94a2558595ff.tar.bz2
cygnal-69769b7cb50c9b0dc1f6921bc76b94a2558595ff.zip
* thread.cc (pthread_cond::init): Disable validity test of object
to initialize since test of uninitialized content is unreliable. (pthread_rwlock::init): Ditto. (pthread_mutex::init): Ditto.
Diffstat (limited to 'winsup/cygwin/thread.cc')
-rw-r--r--winsup/cygwin/thread.cc18
1 files changed, 12 insertions, 6 deletions
diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc
index d7b2a1fa2..7ae53d34a 100644
--- a/winsup/cygwin/thread.cc
+++ b/winsup/cygwin/thread.cc
@@ -2550,13 +2550,15 @@ pthread_cond::init (pthread_cond_t *cond, const pthread_condattr_t *attr)
return EINVAL;
cond_initialization_lock.lock ();
-
+#if 0
+ /* Disabled since recognition of a valid object doesn't work reliably
+ if the object is uninitialized. */
if (!is_good_initializer_or_bad_object (cond))
{
cond_initialization_lock.unlock ();
return EBUSY;
}
-
+#endif
new_cond = new pthread_cond (attr ? (*attr) : NULL);
if (!is_good_object (&new_cond))
{
@@ -2731,13 +2733,15 @@ pthread_rwlock::init (pthread_rwlock_t *rwlock, const pthread_rwlockattr_t *attr
return EINVAL;
rwlock_initialization_lock.lock ();
-
+#if 0
+ /* Disabled since recognition of a valid object doesn't work reliably
+ if the object is uninitialized. */
if (!is_good_initializer_or_bad_object (rwlock))
{
rwlock_initialization_lock.unlock ();
return EBUSY;
}
-
+#endif
new_rwlock = new pthread_rwlock (attr ? (*attr) : NULL);
if (!is_good_object (&new_rwlock))
{
@@ -2909,13 +2913,15 @@ pthread_mutex::init (pthread_mutex_t *mutex,
return EINVAL;
mutex_initialization_lock.lock ();
-
+#if 0
+ /* Disabled since recognition of a valid object doesn't work reliably
+ if the object is uninitialized. */
if (!is_good_initializer_or_bad_object (mutex))
{
mutex_initialization_lock.unlock ();
return EBUSY;
}
-
+#endif
new_mutex = new pthread_mutex (attr ? (*attr) : NULL);
if (!is_good_object (&new_mutex))
{