(lio_listio64): Use PTHREAD_COND_INITIALIZER instead of call to
[kopensolaris-gnu/glibc.git] / rt / lio_listio64.c
index 19f56ad..9cb1125 100644 (file)
@@ -1,5 +1,5 @@
 /* Enqueue and list of read or write requests, 64bit offset version.
-   Copyright (C) 1997 Free Software Foundation, Inc.
+   Copyright (C) 1997, 1998 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
 
@@ -82,7 +82,7 @@ lio_listio64 (mode, list, nent, sig)
     }
   else if (mode == LIO_WAIT)
     {
-      pthread_cond_t cond;
+      pthread_cond_t cond = PTHREAD_COND_INITIALIZER;
       struct waitlist waitlist[nent];
       int oldstate;
 
@@ -109,6 +109,11 @@ lio_listio64 (mode, list, nent, sig)
 
       /* Now it's time to restore the cancelation state.  */
       pthread_setcancelstate (oldstate, NULL);
+
+      /* Release the conditional variable.  */
+      if (pthread_cond_destroy (&cond) != 0)
+       /* This must never happen.  */
+       abort ();
     }
   else
     {