Use _IO_acquire_lock and _IO_release_lock.
authordrepper <drepper>
Fri, 29 Aug 2003 19:58:26 +0000 (19:58 +0000)
committerdrepper <drepper>
Fri, 29 Aug 2003 19:58:26 +0000 (19:58 +0000)
49 files changed:
libio/fileops.c
libio/fputc.c
libio/fputwc.c
libio/freopen.c
libio/freopen64.c
libio/fseek.c
libio/fseeko.c
libio/fseeko64.c
libio/ftello.c
libio/ftello64.c
libio/fwide.c
libio/getc.c
libio/getchar.c
libio/getwc.c
libio/getwchar.c
libio/iofclose.c
libio/iofflush.c
libio/iofgetpos.c
libio/iofgetpos64.c
libio/iofgets.c
libio/iofgetws.c
libio/iofputs.c
libio/iofputws.c
libio/iofread.c
libio/iofsetpos.c
libio/iofsetpos64.c
libio/ioftell.c
libio/iofwrite.c
libio/iogetdelim.c
libio/iogets.c
libio/ioputs.c
libio/ioseekoff.c
libio/ioseekpos.c
libio/iosetbuffer.c
libio/iosetvbuf.c
libio/ioungetc.c
libio/ioungetwc.c
libio/oldiofclose.c
libio/oldiofgetpos.c
libio/oldiofgetpos64.c
libio/oldiofsetpos.c
libio/oldiofsetpos64.c
libio/peekc.c
libio/putc.c
libio/putchar.c
libio/putwc.c
libio/putwchar.c
libio/rewind.c
libio/wfileops.c

index 0faf01f..4993630 100644 (file)
@@ -562,16 +562,13 @@ _IO_new_file_underflow (fp)
         traditional Unix systems did this for stdout.  stderr better
         not be line buffered.  So we do just that here
         explicitly.  --drepper */
-      _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile,
-                               _IO_stdout);
-      _IO_flockfile (_IO_stdout);
+      _IO_acquire_lock (_IO_stdout);
 
       if ((_IO_stdout->_flags & (_IO_LINKED | _IO_NO_WRITES | _IO_LINE_BUF))
          == (_IO_LINKED | _IO_LINE_BUF))
        _IO_OVERFLOW (_IO_stdout, EOF);
 
-      _IO_funlockfile (_IO_stdout);
-      _IO_cleanup_region_end (0);
+      _IO_release_lock (_IO_stdout);
 #endif
     }
 
index 5ef048f..8fd0b80 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1996, 1997, 1998, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -35,11 +35,9 @@ fputc (c, fp)
 {
   int result;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   result = _IO_putc_unlocked (c, fp);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 
index 600d730..8c74943 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1993,1996,1997,1998,1999,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -35,13 +35,11 @@ fputwc (wc, fp)
 {
   int result;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (_IO_fwide (fp, 1) < 0)
     result = WEOF;
   else
     result = _IO_putwc_unlocked (wc, fp);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
index cae9d30..d94a562 100644 (file)
@@ -44,8 +44,7 @@ freopen (filename, mode, fp)
   CHECK_FILE (fp, NULL);
   if (!(fp->_flags & _IO_IS_FILEBUF))
     return NULL;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (filename == NULL && _IO_fileno (fp) >= 0)
     {
       fd = __dup (_IO_fileno (fp));
@@ -84,7 +83,6 @@ freopen (filename, mode, fp)
       if (filename != NULL)
        free ((char *) filename);
     }
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
index d57994d..f8da78c 100644 (file)
@@ -44,8 +44,7 @@ freopen64 (filename, mode, fp)
   CHECK_FILE (fp, NULL);
   if (!(fp->_flags & _IO_IS_FILEBUF))
     return NULL;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (filename == NULL && _IO_fileno (fp) >= 0)
     {
       fd = __dup (_IO_fileno (fp));
@@ -68,8 +67,7 @@ freopen64 (filename, mode, fp)
       if (filename != NULL)
        free ((char *) filename);
     }
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 #else
   __set_errno (ENOSYS);
index 831a4d4..0515822 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993,1995,1996,1997,1998,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -36,11 +37,9 @@ fseek (fp, offset, whence)
 {
   int result;
   CHECK_FILE (fp, -1);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   result = _IO_fseek (fp, offset, whence);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 libc_hidden_def (fseek)
index 8087b95..d464c99 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1993,1995,1996,1997,1998,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -36,10 +36,8 @@ fseeko (fp, offset, whence)
 {
   int result;
   CHECK_FILE (fp, -1);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   result = _IO_fseek (fp, offset, whence);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
index 149e701..5dbfc45 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1993,1995,1996,1997,1998,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -38,11 +38,9 @@ fseeko64 (fp, offset, whence)
 #ifdef _G_LSEEK64
   int result;
   CHECK_FILE (fp, -1);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   result = _IO_fseek (fp, offset, whence);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 #else
   __set_errno (ENOSYS);
index e148664..4975a0b 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1995-2001, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995-2001, 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -37,16 +37,14 @@ ftello (fp)
 {
   _IO_off64_t pos;
   CHECK_FILE (fp, -1L);
-  _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0);
   if (_IO_in_backup (fp))
     {
       if (fp->_mode <= 0)
        pos -= fp->_IO_save_end - fp->_IO_save_base;
     }
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   if (pos == _IO_pos_BAD)
     {
 #ifdef EIO
index b2da11d..0275c0c 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1995-2001, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995-2001, 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -38,16 +38,14 @@ ftello64 (fp)
 #ifdef _G_LSEEK64
   _IO_off64_t pos;
   CHECK_FILE (fp, -1L);
-  _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0);
   if (_IO_in_backup (fp))
     {
       if (fp->_mode <= 0)
        pos -= fp->_IO_save_end - fp->_IO_save_base;
     }
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   if (pos == _IO_pos_BAD)
     {
 #ifdef EIO
index c435e5e..21214a9 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -44,13 +44,9 @@ fwide (fp, mode)
        or the orientation already has been determined.  */
     return fp->_mode;
 
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
-
+  _IO_acquire_lock (fp);
   result = _IO_fwide (fp, mode);
-
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
 
   return result;
 }
index a35dcb9..9121e40 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993, 95, 96, 97, 98, 99 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -36,11 +37,9 @@ _IO_getc (fp)
 {
   int result;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   result = _IO_getc_unlocked (fp);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 
index 8ce67fe..d256050 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1996, 1997, 1998, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -34,12 +34,9 @@ int
 getchar ()
 {
   int result;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile,
-                           _IO_stdin);
-  _IO_flockfile (_IO_stdin);
+  _IO_acquire_lock (_IO_stdin);
   result = _IO_getc_unlocked (_IO_stdin);
-  _IO_funlockfile (_IO_stdin);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (_IO_stdin);
   return result;
 }
 
index 0617e2d..656f1d8 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -37,11 +38,9 @@ _IO_getwc (fp)
 {
   wint_t result;
   CHECK_FILE (fp, WEOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   result = _IO_getwc_unlocked (fp);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 
index 0298e22..a477b45 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1993,1996,1997,1998,1999,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -34,11 +34,8 @@ wint_t
 getwchar ()
 {
   wint_t result;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile,
-                           _IO_stdin);
-  _IO_flockfile (_IO_stdin);
+  _IO_acquire_lock (_IO_stdin);
   result = _IO_getwc_unlocked (_IO_stdin);
-  _IO_funlockfile (_IO_stdin);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (_IO_stdin);
   return result;
 }
index eb01c88..da0f9fe 100644 (file)
@@ -57,15 +57,13 @@ _IO_new_fclose (fp)
   if (fp->_IO_file_flags & _IO_IS_FILEBUF)
     INTUSE(_IO_un_link) ((struct _IO_FILE_plus *) fp);
 
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (fp->_IO_file_flags & _IO_IS_FILEBUF)
     status = INTUSE(_IO_file_close_it) (fp);
   else
     status = fp->_flags & _IO_ERR_SEEN ? -1 : 0;
   _IO_FINISH (fp);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   if (fp->_mode > 0)
     {
 #if _LIBC
index d1a76cc..d2d57f5 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993,1995,1996,1997,1998,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -38,11 +39,9 @@ _IO_fflush (fp)
     {
       int result;
       CHECK_FILE (fp, EOF);
-      _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-      _IO_flockfile (fp);
+      _IO_acquire_lock (fp);
       result = _IO_SYNC (fp) ? EOF : 0;
-      _IO_funlockfile (fp);
-      _IO_cleanup_region_end (0);
+      _IO_release_lock (fp);
       return result;
     }
 }
index 0c80b2f..aff39bb 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1995-2001, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995-2001, 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -38,8 +38,7 @@ _IO_new_fgetpos (fp, posp)
   _IO_off64_t pos;
   int result = 0;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0);
   if (_IO_in_backup (fp))
     {
@@ -72,8 +71,7 @@ _IO_new_fgetpos (fp, posp)
        posp->__state = fp->_wide_data->_IO_state;
     }
 
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 
index 3ad7e11..029556f 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1995-2001, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995-2001, 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -38,16 +38,14 @@ _IO_new_fgetpos64 (fp, posp)
 #ifdef _G_LSEEK64
   _IO_off64_t pos;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0);
   if (_IO_in_backup (fp))
     {
       if (fp->_mode <= 0)
        pos -= fp->_IO_save_end - fp->_IO_save_base;
     }
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   if (pos == _IO_pos_BAD)
     {
       /* ANSI explicitly requires setting errno to a positive value on
index ea1d3ed..879cc97 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993, 95, 96, 97, 98, 99, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -40,8 +41,7 @@ _IO_fgets (buf, n, fp)
   CHECK_FILE (fp, NULL);
   if (n <= 0)
     return NULL;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   /* This is very tricky since a file descriptor may be in the
      non-blocking mode. The error flag doesn't mean much in this
      case. We return an error only when there is a new error. */
@@ -59,8 +59,7 @@ _IO_fgets (buf, n, fp)
       result = buf;
     }
   fp->_IO_file_flags |= old_error;
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 
index 741bb49..654c051 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993, 95, 96, 97, 98, 99, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2001
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -40,8 +41,7 @@ fgetws (buf, n, fp)
   CHECK_FILE (fp, NULL);
   if (n <= 0)
     return NULL;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   /* This is very tricky since a file descriptor may be in the
      non-blocking mode. The error flag doesn't mean much in this
      case. We return an error only when there is a new error. */
@@ -58,7 +58,6 @@ fgetws (buf, n, fp)
       result = buf;
     }
   fp->_IO_file_flags |= old_error;
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
index 088fd5f..b596a99 100644 (file)
@@ -37,13 +37,11 @@ _IO_fputs (str, fp)
   _IO_size_t len = strlen (str);
   int result = EOF;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if ((_IO_vtable_offset (fp) != 0 || _IO_fwide (fp, -1) == -1)
       && _IO_sputn (fp, str, len) == len)
     result = 1;
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 libc_hidden_def (_IO_fputs)
index c23156d..44e6005 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993,1996,1997,1998,1999,2000 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1996, 1997, 1998, 1999, 2000, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -36,12 +37,10 @@ fputws (str, fp)
   _IO_size_t len = __wcslen (str);
   int result = EOF;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (_IO_fwide (fp, 1) == 1
       && _IO_sputn (fp, (char *) str, len) == len)
     result = 1;
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
index 6eb99da..c015baf 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993,1995,1997,1998,1999,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1997, 1998, 1999, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -39,11 +40,9 @@ _IO_fread (buf, size, count, fp)
   CHECK_FILE (fp, 0);
   if (bytes_requested == 0)
     return 0;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   bytes_read = INTUSE(_IO_sgetn) (fp, (char *) buf, bytes_requested);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return bytes_requested == bytes_read ? count : bytes_read / size;
 }
 INTDEF(_IO_fread)
index f3821e2..a907b02 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993, 1995, 1997-2000, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1997, 1998, 1999, 2000, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -36,8 +37,7 @@ _IO_new_fsetpos (fp, posp)
 {
   int result;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (_IO_seekpos_unlocked (fp, posp->__pos, _IOS_INPUT|_IOS_OUTPUT)
       == _IO_pos_BAD)
     {
@@ -57,8 +57,7 @@ _IO_new_fsetpos (fp, posp)
        /* This is a stateful encoding, restore the state.  */
        fp->_wide_data->_IO_state = posp->__state;
     }
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 
index 4746d72..5ef8104 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993, 1995, 1997-2000, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1997, 1998, 1999, 2000, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -37,8 +38,7 @@ _IO_new_fsetpos64 (fp, posp)
 #ifdef _G_LSEEK64
   int result;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (_IO_seekpos_unlocked (fp, posp->__pos, _IOS_INPUT|_IOS_OUTPUT)
       == _IO_pos_BAD)
     {
@@ -58,8 +58,7 @@ _IO_new_fsetpos64 (fp, posp)
        /* This is a stateful encoding, safe the state.  */
        fp->_wide_data->_IO_state = posp->__state;
     }
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 #else
   __set_errno (ENOSYS);
index 589a2a2..b991ef6 100644 (file)
@@ -36,16 +36,14 @@ _IO_ftell (fp)
 {
   _IO_off64_t pos;
   CHECK_FILE (fp, -1L);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0);
   if (_IO_in_backup (fp))
     {
       if (_IO_vtable_offset (fp) != 0 || fp->_mode <= 0)
        pos -= fp->_IO_save_end - fp->_IO_save_base;
     }
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   if (pos == _IO_pos_BAD)
     {
 #ifdef EIO
index 6f0d273..1f4331c 100644 (file)
@@ -40,12 +40,10 @@ _IO_fwrite (buf, size, count, fp)
   CHECK_FILE (fp, 0);
   if (request == 0)
     return 0;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (_IO_vtable_offset (fp) != 0 || _IO_fwide (fp, -1) == -1)
     written = _IO_sputn (fp, (const char *) buf, request);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   if (written == request)
     return count;
   else
index edc5228..3d0c976 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1994, 1996, 1997, 1998, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1994,1996,1997,1998,2001,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -55,8 +55,7 @@ _IO_getdelim (lineptr, n, delimiter, fp)
       return -1;
     }
   CHECK_FILE (fp, -1);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (_IO_ferror_unlocked (fp))
     {
       result = -1;
@@ -120,8 +119,7 @@ _IO_getdelim (lineptr, n, delimiter, fp)
   result = cur_len;
 
 unlock_return:
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 
index 95e8368..a901b8a 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1996, 1997, 1998, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993,1996,1997,1998,2002,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -36,9 +36,7 @@ _IO_gets (buf)
   int ch;
   char *retval;
 
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile,
-                           _IO_stdin);
-  _IO_flockfile (_IO_stdin);
+  _IO_acquire_lock (_IO_stdin);
   ch = _IO_getc_unlocked (_IO_stdin);
   if (ch == EOF)
     {
@@ -67,8 +65,7 @@ _IO_gets (buf)
   buf[count] = 0;
   retval = buf;
 unlock_return:
-  _IO_funlockfile (_IO_stdin);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (_IO_stdin);
   return retval;
 }
 
index f878ea6..2f43e99 100644 (file)
@@ -34,9 +34,7 @@ _IO_puts (str)
 {
   int result = EOF;
   _IO_size_t len = strlen (str);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile,
-                           _IO_stdout);
-  _IO_flockfile (_IO_stdout);
+  _IO_acquire_lock (_IO_stdout);
 
   if ((_IO_vtable_offset (_IO_stdout) != 0
        || _IO_fwide (_IO_stdout, -1) == -1)
@@ -44,8 +42,7 @@ _IO_puts (str)
       && _IO_putc_unlocked ('\n', _IO_stdout) != EOF)
     result = len + 1;
 
-  _IO_funlockfile (_IO_stdout);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (_IO_stdout);
   return result;
 }
 
index 9229166..dd8a37f 100644 (file)
@@ -81,12 +81,8 @@ _IO_seekoff (fp, offset, dir, mode)
 {
   _IO_off64_t retval;
 
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
-
+  _IO_acquire_lock (fp);
   retval = _IO_seekoff_unlocked (fp, offset, dir, mode);
-
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return retval;
 }
index 37d32af..4683ffe 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1997, 1998, 1999, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993,1997,1998,1999,2002,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -59,12 +59,8 @@ _IO_seekpos (fp, pos, mode)
 {
   _IO_off64_t retval;
 
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
-
+  _IO_acquire_lock (fp);
   retval = _IO_seekpos_unlocked (fp, pos, mode);
-
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return retval;
 }
index 2497304..d43d0eb 100644 (file)
@@ -35,8 +35,7 @@ _IO_setbuffer (fp, buf, size)
      _IO_size_t size;
 {
   CHECK_FILE (fp, );
-  _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   fp->_flags &= ~_IO_LINE_BUF;
   if (!buf)
     size = 0;
@@ -44,8 +43,7 @@ _IO_setbuffer (fp, buf, size)
   if (_IO_vtable_offset (fp) == 0 && fp->_mode == 0 && _IO_CHECK_WIDE (fp))
     /* We also have to set the buffer using the wide char function.  */
     (void) _IO_WSETBUF (fp, buf, size);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
 }
 INTDEF(_IO_setbuffer)
 
index 06d9f73..7580230 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -40,8 +41,7 @@ _IO_setvbuf (fp, buf, mode, size)
 {
   int result;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   switch (mode)
     {
     case _IOFBF:
@@ -96,8 +96,7 @@ _IO_setvbuf (fp, buf, mode, size)
   result = _IO_SETBUF (fp, buf, size) == NULL ? EOF : 0;
 
 unlock_return:
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 INTDEF(_IO_setvbuf)
index d32359b..df746b5 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993,1996,1997,1998,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993,1996,1997,1998,2002,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -36,11 +36,9 @@ _IO_ungetc (c, fp)
   CHECK_FILE (fp, EOF);
   if (c == EOF)
     return EOF;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp); 
   result = INTUSE(_IO_sputbackc) (fp, (unsigned char) c);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 
index 1bff412..00d3e96 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993, 1996-1999, 2001, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1996, 1997, 1998, 1999, 2001, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -35,14 +36,12 @@ ungetwc (c, fp)
 {
   int result;
   CHECK_FILE (fp, WEOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   _IO_fwide (fp, 1);
   if (c == WEOF)
     result = WEOF;
   else
     result = INTUSE(_IO_sputbackwc) (fp, c);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
index 18db7b8..3762279 100644 (file)
@@ -52,15 +52,13 @@ _IO_old_fclose (fp)
   if (fp->_IO_file_flags & _IO_IS_FILEBUF)
     INTUSE(_IO_un_link) ((struct _IO_FILE_plus *) fp);
 
-  _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (fp->_IO_file_flags & _IO_IS_FILEBUF)
     status = _IO_old_file_close_it (fp);
   else
     status = fp->_flags & _IO_ERR_SEEN ? -1 : 0;
   _IO_FINISH (fp);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   if (_IO_have_backup (fp))
     INTUSE(_IO_free_backup_area) (fp);
   if (fp != _IO_stdin && fp != _IO_stdout && fp != _IO_stderr)
index 596c405..b00a520 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993,95,96,97,98,99,2000, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -38,13 +39,11 @@ _IO_old_fgetpos (fp, posp)
 {
   _IO_off_t pos;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0);
   if (_IO_in_backup (fp))
     pos -= fp->_IO_save_end - fp->_IO_save_base;
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   if (pos == _IO_pos_BAD)
     {
       /* ANSI explicitly requires setting errno to a positive value on
index 4a38c38..b3a4e0e 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993,95,96,97,98,99,2000, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -39,13 +40,11 @@ _IO_old_fgetpos64 (fp, posp)
 #ifdef _G_LSEEK64
   _IO_off64_t pos;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0);
   if (_IO_in_backup (fp))
     pos -= fp->_IO_save_end - fp->_IO_save_base;
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   if (pos == _IO_pos_BAD)
     {
       /* ANSI explicitly requires setting errno to a positive value on
index ce3bb12..23ef565 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993,95,97,98,99,2000,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1997, 1998, 1999, 2000, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -37,8 +38,7 @@ _IO_old_fsetpos (fp, posp)
 {
   int result;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (_IO_seekpos_unlocked (fp, posp->__pos, _IOS_INPUT|_IOS_OUTPUT)
       == _IO_pos_BAD)
     {
@@ -52,8 +52,7 @@ _IO_old_fsetpos (fp, posp)
     }
   else
     result = 0;
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 
index 834f154..3475859 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1993,95,97,98,99,2000,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1997, 1998, 1999, 2000, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -39,8 +40,7 @@ _IO_old_fsetpos64 (fp, posp)
 #ifdef _G_LSEEK64
   int result;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   if (_IO_seekpos_unlocked (fp, posp->__pos, _IOS_INPUT|_IOS_OUTPUT)
       == _IO_pos_BAD)
     {
@@ -54,8 +54,7 @@ _IO_old_fsetpos64 (fp, posp)
     }
   else
     result = 0;
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 #else
   __set_errno (ENOSYS);
index 95ba8ae..c829c5f 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1993,1995,1996,1997,1998,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -36,10 +36,8 @@ _IO_peekc_locked (fp)
 {
   int result;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   result = _IO_peekc_unlocked (fp);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
index 6495744..db3aab0 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1991,1995,1996,1997,1998,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1995, 1996, 1997, 1998, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -28,11 +29,9 @@ _IO_putc (c, fp)
 {
   int result;
   CHECK_FILE (fp, EOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   result = _IO_putc_unlocked (c, fp);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 INTDEF(_IO_putc)
index ac20727..5b1f292 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1995,1996,1997,1998,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -26,12 +26,9 @@ putchar (c)
      int c;
 {
   int result;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile,
-                              _IO_stdout);
-  _IO_flockfile (_IO_stdout);
+  _IO_acquire_lock (_IO_stdout);
   result = _IO_putc_unlocked (c, _IO_stdout);
-  _IO_funlockfile (_IO_stdout);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (_IO_stdout);
   return result;
 }
 
index 33da712..b43eb03 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1991,95,96,97,98,99,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1995, 1996, 1997, 1998, 1999, 2002, 2003
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -26,11 +27,9 @@ putwc (wc, fp)
 {
   wint_t result;
   CHECK_FILE (fp, WEOF);
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   result = _IO_putwc_unlocked (wc, fp);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
   return result;
 }
 libc_hidden_def (putwc)
index 56fec58..d211640 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 95, 96, 97, 98, 99 Free Software Foundation, Inc.
+/* Copyright (C) 1991,95,96,97,98,99,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -24,11 +24,8 @@ putwchar (wc)
      wchar_t wc;
 {
   wint_t result;
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile,
-                           _IO_stdout);
-  _IO_flockfile (_IO_stdout);
+  _IO_acquire_lock (_IO_stdout);
   result = _IO_putwc_unlocked (wc, _IO_stdout);
-  _IO_funlockfile (_IO_stdout);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (_IO_stdout);
   return result;
 }
index e1bdc57..e77e7b5 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993,96,97,98,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993,96,97,98,2002,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -33,11 +33,9 @@ rewind (fp)
      _IO_FILE *fp;
 {
   CHECK_FILE (fp, );
-  _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
-  _IO_flockfile (fp);
+  _IO_acquire_lock (fp);
   _IO_rewind (fp);
   _IO_clearerr (fp);
-  _IO_funlockfile (fp);
-  _IO_cleanup_region_end (0);
+  _IO_release_lock (fp);
 }
 libc_hidden_def (rewind)
index 569a0d7..5292f48 100644 (file)
@@ -217,16 +217,13 @@ _IO_wfile_underflow (fp)
         traditional Unix systems did this for stdout.  stderr better
         not be line buffered.  So we do just that here
         explicitly.  --drepper */
-      _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile,
-                               _IO_stdout);
-      _IO_flockfile (_IO_stdout);
+      _IO_acquire_lock (_IO_stdout);
 
       if ((_IO_stdout->_flags & (_IO_LINKED | _IO_NO_WRITES | _IO_LINE_BUF))
          == (_IO_LINKED | _IO_LINE_BUF))
        _IO_OVERFLOW (_IO_stdout, EOF);
 
-      _IO_funlockfile (_IO_stdout);
-      _IO_cleanup_region_end (0);
+      _IO_release_lock (_IO_stdout);
 #endif
     }