mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Update.
2003-10-27 Daniel Jacobowitz <drow@mvista.com> * libio/libioP.h [_IO_USE_OLD_IO_FILE] (struct _IO_FILE_complete_plus): New type. * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus. * libio/oldiofdopen.c (_IO_old_fdopen): Likewise. * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise. Call _IO_old_init instead of _IO_init.
This commit is contained in:
@ -48,7 +48,7 @@ _IO_old_fdopen (fd, mode)
|
||||
int posix_mode = 0;
|
||||
struct locked_FILE
|
||||
{
|
||||
struct _IO_FILE_plus fp;
|
||||
struct _IO_FILE_complete_plus fp;
|
||||
#ifdef _IO_MTSAFE_IO
|
||||
_IO_lock_t lock;
|
||||
#endif
|
||||
@ -112,24 +112,24 @@ _IO_old_fdopen (fd, mode)
|
||||
if (new_f == NULL)
|
||||
return NULL;
|
||||
#ifdef _IO_MTSAFE_IO
|
||||
new_f->fp.file._lock = &new_f->lock;
|
||||
new_f->fp.file._file._lock = &new_f->lock;
|
||||
#endif
|
||||
_IO_old_init (&new_f->fp.file, 0);
|
||||
_IO_JUMPS (&new_f->fp) = &_IO_old_file_jumps;
|
||||
_IO_old_file_init (&new_f->fp);
|
||||
_IO_old_init (&new_f->fp.file._file, 0);
|
||||
_IO_JUMPS ((struct _IO_FILE_plus *) &new_f->fp) = &_IO_old_file_jumps;
|
||||
_IO_old_file_init ((struct _IO_FILE_plus *) &new_f->fp);
|
||||
#if !_IO_UNIFIED_JUMPTABLES
|
||||
new_f->fp.vtable = NULL;
|
||||
#endif
|
||||
if (_IO_old_file_attach (&new_f->fp.file, fd) == NULL)
|
||||
if (_IO_old_file_attach (&new_f->fp.file._file, fd) == NULL)
|
||||
{
|
||||
INTUSE(_IO_un_link) (&new_f->fp);
|
||||
INTUSE(_IO_un_link) ((struct _IO_FILE_plus *) &new_f->fp);
|
||||
free (new_f);
|
||||
return NULL;
|
||||
}
|
||||
new_f->fp.file._flags &= ~_IO_DELETE_DONT_CLOSE;
|
||||
new_f->fp.file._file._flags &= ~_IO_DELETE_DONT_CLOSE;
|
||||
|
||||
new_f->fp.file._IO_file_flags =
|
||||
_IO_mask_flags (&new_f->fp.file, read_write,
|
||||
new_f->fp.file._file._IO_file_flags =
|
||||
_IO_mask_flags (&new_f->fp.file._file, read_write,
|
||||
_IO_NO_READS+_IO_NO_WRITES+_IO_IS_APPENDING);
|
||||
|
||||
return (_IO_FILE *) &new_f->fp;
|
||||
|
Reference in New Issue
Block a user