From 9f2642acae08767d4ad846445455be17fccb25c0 Mon Sep 17 00:00:00 2001 From: Nicolas Williams Date: Tue, 12 Apr 2016 01:41:00 -0500 Subject: [PATCH] Fix lib/base/test_base rwlock test --- lib/base/test_base.c | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/lib/base/test_base.c b/lib/base/test_base.c index eb25444cd..b12e778a0 100644 --- a/lib/base/test_base.c +++ b/lib/base/test_base.c @@ -44,6 +44,7 @@ * __heim_string_constant() or heim_db_register() in their stack trace. */ +#include #include #include #include @@ -112,35 +113,27 @@ test_rwlock(void) HEIMDAL_RWLOCK l = HEIMDAL_RWLOCK_INITIALIZER; HEIMDAL_RWLOCK_rdlock(&l); - if (HEIMDAL_RWLOCK_trywrlock(&l)) - abort(); HEIMDAL_RWLOCK_unlock(&l); HEIMDAL_RWLOCK_wrlock(&l); + HEIMDAL_RWLOCK_unlock(&l); + if (HEIMDAL_RWLOCK_trywrlock(&l) != 0) + err(1, "HEIMDAL_RWLOCK_trywrlock() failed with lock not held"); + HEIMDAL_RWLOCK_unlock(&l); if (HEIMDAL_RWLOCK_tryrdlock(&l)) - abort(); - HEIMDAL_RWLOCK_unlock(&l); - if (!HEIMDAL_RWLOCK_trywrlock(&l)) - abort(); - HEIMDAL_RWLOCK_unlock(&l); - if (!HEIMDAL_RWLOCK_tryrdlock(&l)) - abort(); + err(1, "HEIMDAL_RWLOCK_tryrdlock() failed with lock not held"); HEIMDAL_RWLOCK_unlock(&l); HEIMDAL_RWLOCK_destroy(&l); HEIMDAL_RWLOCK_init(&l); HEIMDAL_RWLOCK_rdlock(&l); - if (HEIMDAL_RWLOCK_trywrlock(&l)) - abort(); HEIMDAL_RWLOCK_unlock(&l); HEIMDAL_RWLOCK_wrlock(&l); + HEIMDAL_RWLOCK_unlock(&l); + if (HEIMDAL_RWLOCK_trywrlock(&l)) + err(1, "HEIMDAL_RWLOCK_trywrlock() failed with lock not held"); + HEIMDAL_RWLOCK_unlock(&l); if (HEIMDAL_RWLOCK_tryrdlock(&l)) - abort(); - HEIMDAL_RWLOCK_unlock(&l); - if (!HEIMDAL_RWLOCK_trywrlock(&l)) - abort(); - HEIMDAL_RWLOCK_unlock(&l); - if (!HEIMDAL_RWLOCK_tryrdlock(&l)) - abort(); + err(1, "HEIMDAL_RWLOCK_tryrdlock() failed with lock not held"); HEIMDAL_RWLOCK_unlock(&l); HEIMDAL_RWLOCK_destroy(&l);