summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--libio/genops.c6
2 files changed, 6 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 2d809063f4..ae48deffe3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2007-04-13 Jakub Jelinek <jakub@redhat.com>
+ * libio/genops.c (_IO_default_finish): Call _IO_lock_fini
+ after _IO_un_link, not before it.
+
* stdio-common/printf_fp.c (___printf_fp): Fix exponent -4
special case handling when wcp == wstartp + 1. Fix a comment typo.
* stdio-common/tfformat.c (sprint_doubles): Add a new testcase.
diff --git a/libio/genops.c b/libio/genops.c
index 8d62da7781..3f8d71a50f 100644
--- a/libio/genops.c
+++ b/libio/genops.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993,1995,1997-2002, 2003, 2004, 2006
+/* Copyright (C) 1993,1995,1997-2002, 2003, 2004, 2006, 2007
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -696,12 +696,12 @@ _IO_default_finish (fp, dummy)
fp->_IO_save_base = NULL;
}
+ INTUSE(_IO_un_link) ((struct _IO_FILE_plus *) fp);
+
#ifdef _IO_MTSAFE_IO
if (fp->_lock != NULL)
_IO_lock_fini (*fp->_lock);
#endif
-
- INTUSE(_IO_un_link) ((struct _IO_FILE_plus *) fp);
}
INTDEF(_IO_default_finish)