about summary refs log tree commit diff
path: root/libio/libio.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2006-01-11 07:55:51 +0000
committerUlrich Drepper <drepper@redhat.com>2006-01-11 07:55:51 +0000
commit7876272372451b1cb0a7da9cfbbf9027550bccce (patch)
tree40e56b96b0fe399fd0c7165e47d40241ae1a2ab8 /libio/libio.h
parent3370f2bd3d3b317f57b3fabf1bd8fdfafec75fa9 (diff)
downloadglibc-7876272372451b1cb0a7da9cfbbf9027550bccce.tar.gz
glibc-7876272372451b1cb0a7da9cfbbf9027550bccce.tar.xz
glibc-7876272372451b1cb0a7da9cfbbf9027550bccce.zip
* libio/genops.c (_IO_unbuffer_write): Don't always free the
	buffer.  This is not necessary except in debug mode.  If we don't
	free the buffer but the FILE structure to a list.
	(buffer_free): New function.  Free buffers or tell _IO_unbuffer_write
	to do so.
	* libio/libio.h (struct _IO_FILE): Add new members to keep track
	of which buffers have to be freed.
Diffstat (limited to 'libio/libio.h')
-rw-r--r--libio/libio.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/libio/libio.h b/libio/libio.h
index 21e70489cf..f6aed4fe00 100644
--- a/libio/libio.h
+++ b/libio/libio.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-1995,1997-2003,2004,2005 Free Software Foundation, Inc.
+/* Copyright (C) 1991-1995,1997-2005,2006 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Written by Per Bothner <bothner@cygnus.com>.
 
@@ -317,13 +317,19 @@ struct _IO_FILE_complete
   /* Wide character stream stuff.  */
   struct _IO_codecvt *_codecvt;
   struct _IO_wide_data *_wide_data;
+  struct _IO_FILE *_freeres_list;
+  void *_freeres_buf;
+  size_t _freeres_size;
 # else
   void *__pad1;
   void *__pad2;
+  void *__pad3;
+  void *__pad4;
+  size_t __pad5;
 # endif
   int _mode;
   /* Make sure we don't get into trouble again.  */
-  char _unused2[15 * sizeof (int) - 2 * sizeof (void *)];
+  char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
 #endif
 };