mirror of
https://sourceware.org/git/glibc.git
synced 2025-01-09 10:50:08 +00: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:
parent
f0c76a28fd
commit
7ea113633e
@ -1,3 +1,12 @@
|
|||||||
|
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.
|
||||||
|
|
||||||
2003-11-03 Ulrich Drepper <drepper@redhat.com>
|
2003-11-03 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
* intl/locale.alias: nb_NO is now the correct name, not no_NO.
|
* intl/locale.alias: nb_NO is now the correct name, not no_NO.
|
||||||
|
@ -348,6 +348,17 @@ struct _IO_FILE_plus
|
|||||||
const struct _IO_jump_t *vtable;
|
const struct _IO_jump_t *vtable;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#ifdef _IO_USE_OLD_IO_FILE
|
||||||
|
/* This structure is used by the compatibility code as if it were an
|
||||||
|
_IO_FILE_plus, but has enough space to initialize the _mode argument
|
||||||
|
of an _IO_FILE_complete. */
|
||||||
|
struct _IO_FILE_complete_plus
|
||||||
|
{
|
||||||
|
struct _IO_FILE_complete file;
|
||||||
|
const struct _IO_jump_t *vtable;
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Special file type for fopencookie function. */
|
/* Special file type for fopencookie function. */
|
||||||
struct _IO_cookie_file
|
struct _IO_cookie_file
|
||||||
{
|
{
|
||||||
|
@ -48,7 +48,7 @@ _IO_old_fdopen (fd, mode)
|
|||||||
int posix_mode = 0;
|
int posix_mode = 0;
|
||||||
struct locked_FILE
|
struct locked_FILE
|
||||||
{
|
{
|
||||||
struct _IO_FILE_plus fp;
|
struct _IO_FILE_complete_plus fp;
|
||||||
#ifdef _IO_MTSAFE_IO
|
#ifdef _IO_MTSAFE_IO
|
||||||
_IO_lock_t lock;
|
_IO_lock_t lock;
|
||||||
#endif
|
#endif
|
||||||
@ -112,24 +112,24 @@ _IO_old_fdopen (fd, mode)
|
|||||||
if (new_f == NULL)
|
if (new_f == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
#ifdef _IO_MTSAFE_IO
|
#ifdef _IO_MTSAFE_IO
|
||||||
new_f->fp.file._lock = &new_f->lock;
|
new_f->fp.file._file._lock = &new_f->lock;
|
||||||
#endif
|
#endif
|
||||||
_IO_old_init (&new_f->fp.file, 0);
|
_IO_old_init (&new_f->fp.file._file, 0);
|
||||||
_IO_JUMPS (&new_f->fp) = &_IO_old_file_jumps;
|
_IO_JUMPS ((struct _IO_FILE_plus *) &new_f->fp) = &_IO_old_file_jumps;
|
||||||
_IO_old_file_init (&new_f->fp);
|
_IO_old_file_init ((struct _IO_FILE_plus *) &new_f->fp);
|
||||||
#if !_IO_UNIFIED_JUMPTABLES
|
#if !_IO_UNIFIED_JUMPTABLES
|
||||||
new_f->fp.vtable = NULL;
|
new_f->fp.vtable = NULL;
|
||||||
#endif
|
#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);
|
free (new_f);
|
||||||
return NULL;
|
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 =
|
new_f->fp.file._file._IO_file_flags =
|
||||||
_IO_mask_flags (&new_f->fp.file, read_write,
|
_IO_mask_flags (&new_f->fp.file._file, read_write,
|
||||||
_IO_NO_READS+_IO_NO_WRITES+_IO_IS_APPENDING);
|
_IO_NO_READS+_IO_NO_WRITES+_IO_IS_APPENDING);
|
||||||
|
|
||||||
return (_IO_FILE *) &new_f->fp;
|
return (_IO_FILE *) &new_f->fp;
|
||||||
|
@ -42,7 +42,7 @@ _IO_old_fopen (filename, mode)
|
|||||||
{
|
{
|
||||||
struct locked_FILE
|
struct locked_FILE
|
||||||
{
|
{
|
||||||
struct _IO_FILE_plus fp;
|
struct _IO_FILE_complete_plus fp;
|
||||||
#ifdef _IO_MTSAFE_IO
|
#ifdef _IO_MTSAFE_IO
|
||||||
_IO_lock_t lock;
|
_IO_lock_t lock;
|
||||||
#endif
|
#endif
|
||||||
@ -51,17 +51,17 @@ _IO_old_fopen (filename, mode)
|
|||||||
if (new_f == NULL)
|
if (new_f == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
#ifdef _IO_MTSAFE_IO
|
#ifdef _IO_MTSAFE_IO
|
||||||
new_f->fp.file._lock = &new_f->lock;
|
new_f->fp.file._file._lock = &new_f->lock;
|
||||||
#endif
|
#endif
|
||||||
_IO_old_init (&new_f->fp.file, 0);
|
_IO_old_init (&new_f->fp.file._file, 0);
|
||||||
_IO_JUMPS (&new_f->fp) = &_IO_old_file_jumps;
|
_IO_JUMPS ((struct _IO_FILE_plus *) &new_f->fp) = &_IO_old_file_jumps;
|
||||||
_IO_old_file_init (&new_f->fp);
|
_IO_old_file_init ((struct _IO_FILE_plus *) &new_f->fp);
|
||||||
#if !_IO_UNIFIED_JUMPTABLES
|
#if !_IO_UNIFIED_JUMPTABLES
|
||||||
new_f->fp.vtable = NULL;
|
new_f->fp.vtable = NULL;
|
||||||
#endif
|
#endif
|
||||||
if (_IO_old_file_fopen ((_IO_FILE *) &new_f->fp, filename, mode) != NULL)
|
if (_IO_old_file_fopen ((_IO_FILE *) &new_f->fp, filename, mode) != NULL)
|
||||||
return (_IO_FILE *) &new_f->fp;
|
return (_IO_FILE *) &new_f->fp;
|
||||||
INTUSE(_IO_un_link) (&new_f->fp);
|
INTUSE(_IO_un_link) ((struct _IO_FILE_plus *) &new_f->fp);
|
||||||
free (new_f);
|
free (new_f);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
@ -100,7 +100,7 @@ extern int _IO_dup2 __P ((int fd, int fd2));
|
|||||||
|
|
||||||
struct _IO_proc_file
|
struct _IO_proc_file
|
||||||
{
|
{
|
||||||
struct _IO_FILE_plus file;
|
struct _IO_FILE_complete_plus file;
|
||||||
/* Following fields must match those in class procbuf (procbuf.h) */
|
/* Following fields must match those in class procbuf (procbuf.h) */
|
||||||
_IO_pid_t pid;
|
_IO_pid_t pid;
|
||||||
struct _IO_proc_file *next;
|
struct _IO_proc_file *next;
|
||||||
@ -219,18 +219,18 @@ _IO_old_popen (command, mode)
|
|||||||
if (new_f == NULL)
|
if (new_f == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
#ifdef _IO_MTSAFE_IO
|
#ifdef _IO_MTSAFE_IO
|
||||||
new_f->fpx.file.file._lock = &new_f->lock;
|
new_f->fpx.file.file._file._lock = &new_f->lock;
|
||||||
#endif
|
#endif
|
||||||
fp = &new_f->fpx.file.file;
|
fp = &new_f->fpx.file.file._file;
|
||||||
INTUSE(_IO_init) (fp, 0);
|
_IO_old_init (fp, 0);
|
||||||
_IO_JUMPS (&new_f->fpx.file) = &_IO_old_proc_jumps;
|
_IO_JUMPS ((struct _IO_FILE_plus *) &new_f->fpx.file) = &_IO_old_proc_jumps;
|
||||||
_IO_old_file_init (&new_f->fpx.file);
|
_IO_old_file_init ((struct _IO_FILE_plus *) &new_f->fpx.file);
|
||||||
#if !_IO_UNIFIED_JUMPTABLES
|
#if !_IO_UNIFIED_JUMPTABLES
|
||||||
new_f->fpx.file.vtable = NULL;
|
new_f->fpx.file.vtable = NULL;
|
||||||
#endif
|
#endif
|
||||||
if (_IO_old_proc_open (fp, command, mode) != NULL)
|
if (_IO_old_proc_open (fp, command, mode) != NULL)
|
||||||
return fp;
|
return fp;
|
||||||
INTUSE(_IO_un_link) (&new_f->fpx.file);
|
INTUSE(_IO_un_link) ((struct _IO_FILE_plus *) &new_f->fpx.file);
|
||||||
free (new_f);
|
free (new_f);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user