2024-01-02 02:12:26 +08:00
|
|
|
/* Copyright (C) 1994-2024 Free Software Foundation, Inc.
|
2001-07-06 12:58:11 +08:00
|
|
|
This file is part of the GNU C Library.
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
|
2001-07-06 12:58:11 +08:00
|
|
|
The GNU C Library is free software; you can redistribute it and/or
|
|
|
|
modify it under the terms of the GNU Lesser General Public
|
|
|
|
License as published by the Free Software Foundation; either
|
|
|
|
version 2.1 of the License, or (at your option) any later version.
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
|
2001-07-06 12:58:11 +08:00
|
|
|
The GNU C Library is distributed in the hope that it will be useful,
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
1997-08-20 11:53:21 +08:00
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
2001-07-06 12:58:11 +08:00
|
|
|
Lesser General Public License for more details.
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
|
2001-07-06 12:58:11 +08:00
|
|
|
You should have received a copy of the GNU Lesser General Public
|
2012-02-10 07:18:22 +08:00
|
|
|
License along with the GNU C Library; if not, see
|
Prefer https to http for gnu.org and fsf.org URLs
Also, change sources.redhat.com to sourceware.org.
This patch was automatically generated by running the following shell
script, which uses GNU sed, and which avoids modifying files imported
from upstream:
sed -ri '
s,(http|ftp)(://(.*\.)?(gnu|fsf|sourceware)\.org($|[^.]|\.[^a-z])),https\2,g
s,(http|ftp)(://(.*\.)?)sources\.redhat\.com($|[^.]|\.[^a-z]),https\2sourceware.org\4,g
' \
$(find $(git ls-files) -prune -type f \
! -name '*.po' \
! -name 'ChangeLog*' \
! -path COPYING ! -path COPYING.LIB \
! -path manual/fdl-1.3.texi ! -path manual/lgpl-2.1.texi \
! -path manual/texinfo.tex ! -path scripts/config.guess \
! -path scripts/config.sub ! -path scripts/install-sh \
! -path scripts/mkinstalldirs ! -path scripts/move-if-change \
! -path INSTALL ! -path locale/programs/charmap-kw.h \
! -path po/libc.pot ! -path sysdeps/gnu/errlist.c \
! '(' -name configure \
-execdir test -f configure.ac -o -f configure.in ';' ')' \
! '(' -name preconfigure \
-execdir test -f preconfigure.ac ';' ')' \
-print)
and then by running 'make dist-prepare' to regenerate files built
from the altered files, and then executing the following to cleanup:
chmod a+x sysdeps/unix/sysv/linux/riscv/configure
# Omit irrelevant whitespace and comment-only changes,
# perhaps from a slightly-different Autoconf version.
git checkout -f \
sysdeps/csky/configure \
sysdeps/hppa/configure \
sysdeps/riscv/configure \
sysdeps/unix/sysv/linux/csky/configure
# Omit changes that caused a pre-commit check to fail like this:
# remote: *** error: sysdeps/powerpc/powerpc64/ppc-mcount.S: trailing lines
git checkout -f \
sysdeps/powerpc/powerpc64/ppc-mcount.S \
sysdeps/unix/sysv/linux/s390/s390-64/syscall.S
# Omit change that caused a pre-commit check to fail like this:
# remote: *** error: sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S: last line does not end in newline
git checkout -f sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S
2019-09-07 13:40:42 +08:00
|
|
|
<https://www.gnu.org/licenses/>.
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
|
2001-07-06 12:58:11 +08:00
|
|
|
As a special exception, if you link the code in this file with
|
|
|
|
files compiled with a GNU compiler to produce an executable,
|
|
|
|
that does not cause the resulting executable to be covered by
|
|
|
|
the GNU Lesser General Public License. This exception does not
|
|
|
|
however invalidate any other reasons why the executable file
|
|
|
|
might be covered by the GNU Lesser General Public License.
|
|
|
|
This exception applies to code released by its copyright holders
|
|
|
|
in files containing the exception. */
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include "libioP.h"
|
|
|
|
#include <string.h>
|
|
|
|
#include <errno.h>
|
2012-09-04 19:24:43 +08:00
|
|
|
#include <limits.h>
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
|
|
|
|
/* Read up to (and including) a TERMINATOR from FP into *LINEPTR
|
|
|
|
(and null-terminate it). *LINEPTR is a pointer returned from malloc (or
|
|
|
|
NULL), pointing to *N characters of space. It is realloc'ed as
|
|
|
|
necessary. Returns the number of characters read (not including the
|
|
|
|
null terminator), or -1 on error or EOF. */
|
|
|
|
|
2018-02-08 07:42:04 +08:00
|
|
|
ssize_t
|
2021-07-08 00:33:52 +08:00
|
|
|
__getdelim (char **lineptr, size_t *n, int delimiter, FILE *fp)
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
{
|
2018-02-08 07:42:04 +08:00
|
|
|
ssize_t result;
|
|
|
|
ssize_t cur_len = 0;
|
|
|
|
ssize_t len;
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
|
|
|
|
CHECK_FILE (fp, -1);
|
Update.
2003-08-29 Jakub Jelinek <jakub@redhat.com>
* libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
putwchar.c and rewind.c with exceptions.
* sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
_IO_release_lock): Define.
* libio/fileops.c (_IO_new_file_underflow): Use it.
* libio/fputc.c (fputc): Likewise.
* libio/fputwc.c (fputwc): Likewise.
* libio/freopen64.c (freopen64):
* libio/freopen.c (freopen): Likewise.
* libio/fseek.c (fseek): Likewise.
* libio/fseeko64.c (fseeko64): Likewise.
* libio/fseeko.c (fseeko): Likewise.
* libio/ftello64.c (ftello64): Likewise.
* libio/ftello.c (ftello): Likewise.
* libio/fwide.c (fwide): Likewise.
* libio/getc.c (_IO_getc): Likewise.
* libio/getchar.c (getchar): Likewise.
* libio/getwc.c (_IO_getwc): Likewise.
* libio/getwchar.c (getwchar): Likewise.
* libio/iofclose.c (_IO_new_fclose):
* libio/iofflush.c (_IO_fflush): Likewise.
* libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
* libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
* libio/iofgets.c (_IO_fgets): Likewise.
* libio/iofgetws.c (fgetws): Likewise.
* libio/iofputs.c (_IO_fputs):
* libio/iofputws.c (_IO_fputs): Likewise.
* libio/iofread.c (_IO_fread): Likewise.
* libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
* libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
* libio/ioftell.c (_IO_ftell): Likewise.
* libio/iofwrite.c (_IO_fwrite): Likewise.
* libio/iogetdelim.c (_IO_getdelim): Likewise.
* libio/iogets.c (_IO_gets): Likewise.
* libio/ioputs.c (_IO_puts): Likewise.
* libio/ioseekoff.c (_IO_seekoff): Likewise.
* libio/ioseekpos.c (_IO_seekpos): Likewise.
* libio/iosetbuffer.c (_IO_setbuffer): Likewise.
* libio/iosetvbuf.c (_IO_setvbuf): Likewise.
* libio/ioungetc.c (_IO_ungetc): Likewise.
* libio/ioungetwc.c (ungetwc): Likewise.
* libio/oldiofclose.c (_IO_old_fclose): Likewise.
* libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
* libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
* libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
* libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
* libio/peekc.c (_IO_peekc_locked): Likewise.
* libio/putc.c (_IO_putc): Likewise.
* libio/putchar.c (putchar): Likewise.
* libio/putwc.c (putwc): Likewise.
* libio/putwchar.c (putwchar): Likewise.
* libio/rewind.c (rewind): Likewise.
* libio/wfileops.c (_IO_wfile_underflow): Likewise.
2003-08-30 03:58:49 +08:00
|
|
|
_IO_acquire_lock (fp);
|
Wed May 8 20:04:29 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir).
[! libc.so-version]: Clear static-only-routines.
($(common-objpfx)sor-$(subdir)): New target.
[static-only-routines]: New static pattern rule for these .so's.
* Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed.
[libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so):
New targets replace it.
(install) [libc.so-version]: Depend on $(libdir)/libc.so instead of
$(slibdir)/libc.so.
* io/Makefile (static-only-routines): New variable.
* configure.in: Check for tools objdump and objcopy, and for awk.
* config.make.in (OBJDUMP, OBJCOPY, AWK): New variables.
Thu May 9 01:24:00 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/config.h: Remove definition of wint_t.
* locale/programs/ld-collate.c: Include <wchar.h> instead of
<wcstr.h>.
* manual/time.texi: Add some more description for %U and %W
format of strftime. Describe new format %V of strftime.
* resolv/gethnamaddr.c: Prevent warning by preventing variable
definition.
* stdio-common/_itoa.c: Ditto.
Tue May 7 23:43:07 1996 Ulrich Drepper <drepper@cygnus.com>
* libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c,
libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c,
libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c,
libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c,
libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c,
libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c,
stdio-common/vfscanf.c: Prepare for reentrent libio.
* libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c,
libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c,
libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files.
Used in reentrent libio.
* misc/getusershell.c: Prevent warnings.
1996-05-09 08:37:21 +08:00
|
|
|
if (_IO_ferror_unlocked (fp))
|
|
|
|
{
|
|
|
|
result = -1;
|
|
|
|
goto unlock_return;
|
|
|
|
}
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
|
2022-12-19 19:40:45 +08:00
|
|
|
if (lineptr == NULL || n == NULL)
|
|
|
|
{
|
|
|
|
__set_errno (EINVAL);
|
|
|
|
fseterr_unlocked (fp);
|
|
|
|
result = -1;
|
|
|
|
goto unlock_return;
|
|
|
|
}
|
|
|
|
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
if (*lineptr == NULL || *n == 0)
|
|
|
|
{
|
|
|
|
*n = 120;
|
|
|
|
*lineptr = (char *) malloc (*n);
|
|
|
|
if (*lineptr == NULL)
|
Wed May 8 20:04:29 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir).
[! libc.so-version]: Clear static-only-routines.
($(common-objpfx)sor-$(subdir)): New target.
[static-only-routines]: New static pattern rule for these .so's.
* Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed.
[libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so):
New targets replace it.
(install) [libc.so-version]: Depend on $(libdir)/libc.so instead of
$(slibdir)/libc.so.
* io/Makefile (static-only-routines): New variable.
* configure.in: Check for tools objdump and objcopy, and for awk.
* config.make.in (OBJDUMP, OBJCOPY, AWK): New variables.
Thu May 9 01:24:00 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/config.h: Remove definition of wint_t.
* locale/programs/ld-collate.c: Include <wchar.h> instead of
<wcstr.h>.
* manual/time.texi: Add some more description for %U and %W
format of strftime. Describe new format %V of strftime.
* resolv/gethnamaddr.c: Prevent warning by preventing variable
definition.
* stdio-common/_itoa.c: Ditto.
Tue May 7 23:43:07 1996 Ulrich Drepper <drepper@cygnus.com>
* libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c,
libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c,
libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c,
libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c,
libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c,
libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c,
stdio-common/vfscanf.c: Prepare for reentrent libio.
* libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c,
libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c,
libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files.
Used in reentrent libio.
* misc/getusershell.c: Prevent warnings.
1996-05-09 08:37:21 +08:00
|
|
|
{
|
2022-12-19 19:40:45 +08:00
|
|
|
fseterr_unlocked (fp);
|
Wed May 8 20:04:29 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir).
[! libc.so-version]: Clear static-only-routines.
($(common-objpfx)sor-$(subdir)): New target.
[static-only-routines]: New static pattern rule for these .so's.
* Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed.
[libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so):
New targets replace it.
(install) [libc.so-version]: Depend on $(libdir)/libc.so instead of
$(slibdir)/libc.so.
* io/Makefile (static-only-routines): New variable.
* configure.in: Check for tools objdump and objcopy, and for awk.
* config.make.in (OBJDUMP, OBJCOPY, AWK): New variables.
Thu May 9 01:24:00 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/config.h: Remove definition of wint_t.
* locale/programs/ld-collate.c: Include <wchar.h> instead of
<wcstr.h>.
* manual/time.texi: Add some more description for %U and %W
format of strftime. Describe new format %V of strftime.
* resolv/gethnamaddr.c: Prevent warning by preventing variable
definition.
* stdio-common/_itoa.c: Ditto.
Tue May 7 23:43:07 1996 Ulrich Drepper <drepper@cygnus.com>
* libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c,
libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c,
libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c,
libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c,
libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c,
libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c,
stdio-common/vfscanf.c: Prepare for reentrent libio.
* libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c,
libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c,
libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files.
Used in reentrent libio.
* misc/getusershell.c: Prevent warnings.
1996-05-09 08:37:21 +08:00
|
|
|
result = -1;
|
|
|
|
goto unlock_return;
|
|
|
|
}
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
len = fp->_IO_read_end - fp->_IO_read_ptr;
|
|
|
|
if (len <= 0)
|
|
|
|
{
|
|
|
|
if (__underflow (fp) == EOF)
|
Wed May 8 20:04:29 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir).
[! libc.so-version]: Clear static-only-routines.
($(common-objpfx)sor-$(subdir)): New target.
[static-only-routines]: New static pattern rule for these .so's.
* Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed.
[libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so):
New targets replace it.
(install) [libc.so-version]: Depend on $(libdir)/libc.so instead of
$(slibdir)/libc.so.
* io/Makefile (static-only-routines): New variable.
* configure.in: Check for tools objdump and objcopy, and for awk.
* config.make.in (OBJDUMP, OBJCOPY, AWK): New variables.
Thu May 9 01:24:00 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/config.h: Remove definition of wint_t.
* locale/programs/ld-collate.c: Include <wchar.h> instead of
<wcstr.h>.
* manual/time.texi: Add some more description for %U and %W
format of strftime. Describe new format %V of strftime.
* resolv/gethnamaddr.c: Prevent warning by preventing variable
definition.
* stdio-common/_itoa.c: Ditto.
Tue May 7 23:43:07 1996 Ulrich Drepper <drepper@cygnus.com>
* libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c,
libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c,
libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c,
libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c,
libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c,
libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c,
stdio-common/vfscanf.c: Prepare for reentrent libio.
* libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c,
libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c,
libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files.
Used in reentrent libio.
* misc/getusershell.c: Prevent warnings.
1996-05-09 08:37:21 +08:00
|
|
|
{
|
|
|
|
result = -1;
|
|
|
|
goto unlock_return;
|
|
|
|
}
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
len = fp->_IO_read_end - fp->_IO_read_ptr;
|
|
|
|
}
|
|
|
|
|
|
|
|
for (;;)
|
|
|
|
{
|
2018-02-08 07:42:04 +08:00
|
|
|
size_t needed;
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
char *t;
|
|
|
|
t = (char *) memchr ((void *) fp->_IO_read_ptr, delimiter, len);
|
|
|
|
if (t != NULL)
|
|
|
|
len = (t - fp->_IO_read_ptr) + 1;
|
2014-02-10 21:45:42 +08:00
|
|
|
if (__glibc_unlikely (len >= SSIZE_MAX - cur_len))
|
2005-10-14 14:25:55 +08:00
|
|
|
{
|
|
|
|
__set_errno (EOVERFLOW);
|
2022-12-19 19:40:45 +08:00
|
|
|
fseterr_unlocked (fp);
|
2005-10-14 14:25:55 +08:00
|
|
|
result = -1;
|
|
|
|
goto unlock_return;
|
|
|
|
}
|
Tue Dec 5 02:27:32 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile [routines]: Remove iofscanf, add iopopen, pclose.
* libio/iofscanf.c: Remove file.
* libio/iogetdelim.c (_IO_getdelim): Correct stupid bug at string
termination.
* libio/iopopen.c: New file from GNU libio.
* libio/memstream.c: Fixed bug in fclose handling. Instead of
providing a close callback we need a finish callback.
* libio/pclose.c: New file. Derived from popen.c in GNU libio.
* posix/gnu/types.h: Fixed typo.
* stdio-common/errnobug.c: fputs returns EOF in error case. Do
not test for != 0.
* stdio-common/printf-parse.h (parse_one_spec): Do not force
padding with ' ' if precision is given. Fix by HJ Lu.
* stdio-common/printf_fp.c: Fix comment.
* stdio-common/tfformat.c, stdio-common/tiformat.c,
stdio-common/tstdiomisc.c: New files from GNU libio test suite.
* stdio-common/tstgetln.c: Provide ssize_t type when testing
libio.
* stdio-common/vfprintf.c (outchar): Use PUTC instead of putc.
(vfprintf): Cleasr args_type array before using it.
When printing 0 as an integer with precision 0 nothing must be
written for the number.
Based on patch by HJ Lu.
* stdio-common/vfscanf.c: Remove fixed input buffer. Now we
have a dynamically extended buffer.
* stdlib/strtod.c: Merge with version in Linux libc. This fixes
some bugs with handling of very small numbers and has different
solution for formaer patches.
* sysdeps/i386/i586/add_n.S, sysdeps/i386/i586/sub_n.S: Rename
macros r1 and r2 to t1, and t2 resp. This is necessary because
glibc headers also define r1.
Tue Dec 5 02:27:32 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile [routines]: Remove iofscanf, add iopopen, pclose.
* libio/iofscanf.c: Remove file.
* libio/iogetdelim.c (_IO_getdelim): Correct stupid bug at string
termination.
* libio/iopopen.c: New file from GNU libio.
* libio/memstream.c: Fixed bug in fclose handling. Instead of
providing a close callback we need a finish callback.
* libio/pclose.c: New file. Derived from popen.c in GNU libio.
* posix/gnu/types.h: Fixed typo.
* stdio-common/errnobug.c: fputs returns EOF in error case. Do
not test for != 0.
* stdio-common/printf-parse.h (parse_one_spec): Do not force
padding with ' ' if precision is given. Fix by HJ Lu.
* stdio-common/printf_fp.c: Fix comment.
* stdio-common/tfformat.c, stdio-common/tiformat.c,
stdio-common/tstdiomisc.c: New files from GNU libio test suite.
* stdio-common/tstgetln.c: Provide ssize_t type when testing
libio.
* stdio-common/vfprintf.c (outchar): Use PUTC instead of putc.
(vfprintf): Cleasr args_type array before using it.
When printing 0 as an integer with precision 0 nothing must be
written for the number.
Based on patch by HJ Lu.
* stdio-common/vfscanf.c: Remove fixed input buffer. Now we
have a dynamically extended buffer.
* stdlib/strtod.c: Merge with version in Linux libc. This fixes
some bugs with handling of very small numbers and has different
solution for formaer patches.
* sysdeps/i386/i586/add_n.S, sysdeps/i386/i586/sub_n.S: Rename
macros r1 and r2 to t1, and t2 resp. This is necessary because
glibc headers also define r1.
1995-12-05 11:35:55 +08:00
|
|
|
/* Make enough space for len+1 (for final NUL) bytes. */
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
needed = cur_len + len + 1;
|
|
|
|
if (needed > *n)
|
|
|
|
{
|
2001-12-29 23:57:15 +08:00
|
|
|
char *new_lineptr;
|
|
|
|
|
Tue Dec 5 02:27:32 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile [routines]: Remove iofscanf, add iopopen, pclose.
* libio/iofscanf.c: Remove file.
* libio/iogetdelim.c (_IO_getdelim): Correct stupid bug at string
termination.
* libio/iopopen.c: New file from GNU libio.
* libio/memstream.c: Fixed bug in fclose handling. Instead of
providing a close callback we need a finish callback.
* libio/pclose.c: New file. Derived from popen.c in GNU libio.
* posix/gnu/types.h: Fixed typo.
* stdio-common/errnobug.c: fputs returns EOF in error case. Do
not test for != 0.
* stdio-common/printf-parse.h (parse_one_spec): Do not force
padding with ' ' if precision is given. Fix by HJ Lu.
* stdio-common/printf_fp.c: Fix comment.
* stdio-common/tfformat.c, stdio-common/tiformat.c,
stdio-common/tstdiomisc.c: New files from GNU libio test suite.
* stdio-common/tstgetln.c: Provide ssize_t type when testing
libio.
* stdio-common/vfprintf.c (outchar): Use PUTC instead of putc.
(vfprintf): Cleasr args_type array before using it.
When printing 0 as an integer with precision 0 nothing must be
written for the number.
Based on patch by HJ Lu.
* stdio-common/vfscanf.c: Remove fixed input buffer. Now we
have a dynamically extended buffer.
* stdlib/strtod.c: Merge with version in Linux libc. This fixes
some bugs with handling of very small numbers and has different
solution for formaer patches.
* sysdeps/i386/i586/add_n.S, sysdeps/i386/i586/sub_n.S: Rename
macros r1 and r2 to t1, and t2 resp. This is necessary because
glibc headers also define r1.
Tue Dec 5 02:27:32 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile [routines]: Remove iofscanf, add iopopen, pclose.
* libio/iofscanf.c: Remove file.
* libio/iogetdelim.c (_IO_getdelim): Correct stupid bug at string
termination.
* libio/iopopen.c: New file from GNU libio.
* libio/memstream.c: Fixed bug in fclose handling. Instead of
providing a close callback we need a finish callback.
* libio/pclose.c: New file. Derived from popen.c in GNU libio.
* posix/gnu/types.h: Fixed typo.
* stdio-common/errnobug.c: fputs returns EOF in error case. Do
not test for != 0.
* stdio-common/printf-parse.h (parse_one_spec): Do not force
padding with ' ' if precision is given. Fix by HJ Lu.
* stdio-common/printf_fp.c: Fix comment.
* stdio-common/tfformat.c, stdio-common/tiformat.c,
stdio-common/tstdiomisc.c: New files from GNU libio test suite.
* stdio-common/tstgetln.c: Provide ssize_t type when testing
libio.
* stdio-common/vfprintf.c (outchar): Use PUTC instead of putc.
(vfprintf): Cleasr args_type array before using it.
When printing 0 as an integer with precision 0 nothing must be
written for the number.
Based on patch by HJ Lu.
* stdio-common/vfscanf.c: Remove fixed input buffer. Now we
have a dynamically extended buffer.
* stdlib/strtod.c: Merge with version in Linux libc. This fixes
some bugs with handling of very small numbers and has different
solution for formaer patches.
* sysdeps/i386/i586/add_n.S, sysdeps/i386/i586/sub_n.S: Rename
macros r1 and r2 to t1, and t2 resp. This is necessary because
glibc headers also define r1.
1995-12-05 11:35:55 +08:00
|
|
|
if (needed < 2 * *n)
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
needed = 2 * *n; /* Be generous. */
|
2001-12-29 23:57:15 +08:00
|
|
|
new_lineptr = (char *) realloc (*lineptr, needed);
|
|
|
|
if (new_lineptr == NULL)
|
Wed May 8 20:04:29 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir).
[! libc.so-version]: Clear static-only-routines.
($(common-objpfx)sor-$(subdir)): New target.
[static-only-routines]: New static pattern rule for these .so's.
* Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed.
[libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so):
New targets replace it.
(install) [libc.so-version]: Depend on $(libdir)/libc.so instead of
$(slibdir)/libc.so.
* io/Makefile (static-only-routines): New variable.
* configure.in: Check for tools objdump and objcopy, and for awk.
* config.make.in (OBJDUMP, OBJCOPY, AWK): New variables.
Thu May 9 01:24:00 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/config.h: Remove definition of wint_t.
* locale/programs/ld-collate.c: Include <wchar.h> instead of
<wcstr.h>.
* manual/time.texi: Add some more description for %U and %W
format of strftime. Describe new format %V of strftime.
* resolv/gethnamaddr.c: Prevent warning by preventing variable
definition.
* stdio-common/_itoa.c: Ditto.
Tue May 7 23:43:07 1996 Ulrich Drepper <drepper@cygnus.com>
* libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c,
libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c,
libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c,
libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c,
libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c,
libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c,
stdio-common/vfscanf.c: Prepare for reentrent libio.
* libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c,
libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c,
libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files.
Used in reentrent libio.
* misc/getusershell.c: Prevent warnings.
1996-05-09 08:37:21 +08:00
|
|
|
{
|
2022-12-19 19:40:45 +08:00
|
|
|
fseterr_unlocked (fp);
|
Wed May 8 20:04:29 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir).
[! libc.so-version]: Clear static-only-routines.
($(common-objpfx)sor-$(subdir)): New target.
[static-only-routines]: New static pattern rule for these .so's.
* Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed.
[libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so):
New targets replace it.
(install) [libc.so-version]: Depend on $(libdir)/libc.so instead of
$(slibdir)/libc.so.
* io/Makefile (static-only-routines): New variable.
* configure.in: Check for tools objdump and objcopy, and for awk.
* config.make.in (OBJDUMP, OBJCOPY, AWK): New variables.
Thu May 9 01:24:00 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/config.h: Remove definition of wint_t.
* locale/programs/ld-collate.c: Include <wchar.h> instead of
<wcstr.h>.
* manual/time.texi: Add some more description for %U and %W
format of strftime. Describe new format %V of strftime.
* resolv/gethnamaddr.c: Prevent warning by preventing variable
definition.
* stdio-common/_itoa.c: Ditto.
Tue May 7 23:43:07 1996 Ulrich Drepper <drepper@cygnus.com>
* libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c,
libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c,
libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c,
libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c,
libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c,
libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c,
stdio-common/vfscanf.c: Prepare for reentrent libio.
* libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c,
libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c,
libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files.
Used in reentrent libio.
* misc/getusershell.c: Prevent warnings.
1996-05-09 08:37:21 +08:00
|
|
|
result = -1;
|
|
|
|
goto unlock_return;
|
|
|
|
}
|
2001-12-29 23:57:15 +08:00
|
|
|
*lineptr = new_lineptr;
|
|
|
|
*n = needed;
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
}
|
|
|
|
memcpy (*lineptr + cur_len, (void *) fp->_IO_read_ptr, len);
|
|
|
|
fp->_IO_read_ptr += len;
|
|
|
|
cur_len += len;
|
|
|
|
if (t != NULL || __underflow (fp) == EOF)
|
|
|
|
break;
|
|
|
|
len = fp->_IO_read_end - fp->_IO_read_ptr;
|
|
|
|
}
|
Tue Dec 5 02:27:32 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile [routines]: Remove iofscanf, add iopopen, pclose.
* libio/iofscanf.c: Remove file.
* libio/iogetdelim.c (_IO_getdelim): Correct stupid bug at string
termination.
* libio/iopopen.c: New file from GNU libio.
* libio/memstream.c: Fixed bug in fclose handling. Instead of
providing a close callback we need a finish callback.
* libio/pclose.c: New file. Derived from popen.c in GNU libio.
* posix/gnu/types.h: Fixed typo.
* stdio-common/errnobug.c: fputs returns EOF in error case. Do
not test for != 0.
* stdio-common/printf-parse.h (parse_one_spec): Do not force
padding with ' ' if precision is given. Fix by HJ Lu.
* stdio-common/printf_fp.c: Fix comment.
* stdio-common/tfformat.c, stdio-common/tiformat.c,
stdio-common/tstdiomisc.c: New files from GNU libio test suite.
* stdio-common/tstgetln.c: Provide ssize_t type when testing
libio.
* stdio-common/vfprintf.c (outchar): Use PUTC instead of putc.
(vfprintf): Cleasr args_type array before using it.
When printing 0 as an integer with precision 0 nothing must be
written for the number.
Based on patch by HJ Lu.
* stdio-common/vfscanf.c: Remove fixed input buffer. Now we
have a dynamically extended buffer.
* stdlib/strtod.c: Merge with version in Linux libc. This fixes
some bugs with handling of very small numbers and has different
solution for formaer patches.
* sysdeps/i386/i586/add_n.S, sysdeps/i386/i586/sub_n.S: Rename
macros r1 and r2 to t1, and t2 resp. This is necessary because
glibc headers also define r1.
Tue Dec 5 02:27:32 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile [routines]: Remove iofscanf, add iopopen, pclose.
* libio/iofscanf.c: Remove file.
* libio/iogetdelim.c (_IO_getdelim): Correct stupid bug at string
termination.
* libio/iopopen.c: New file from GNU libio.
* libio/memstream.c: Fixed bug in fclose handling. Instead of
providing a close callback we need a finish callback.
* libio/pclose.c: New file. Derived from popen.c in GNU libio.
* posix/gnu/types.h: Fixed typo.
* stdio-common/errnobug.c: fputs returns EOF in error case. Do
not test for != 0.
* stdio-common/printf-parse.h (parse_one_spec): Do not force
padding with ' ' if precision is given. Fix by HJ Lu.
* stdio-common/printf_fp.c: Fix comment.
* stdio-common/tfformat.c, stdio-common/tiformat.c,
stdio-common/tstdiomisc.c: New files from GNU libio test suite.
* stdio-common/tstgetln.c: Provide ssize_t type when testing
libio.
* stdio-common/vfprintf.c (outchar): Use PUTC instead of putc.
(vfprintf): Cleasr args_type array before using it.
When printing 0 as an integer with precision 0 nothing must be
written for the number.
Based on patch by HJ Lu.
* stdio-common/vfscanf.c: Remove fixed input buffer. Now we
have a dynamically extended buffer.
* stdlib/strtod.c: Merge with version in Linux libc. This fixes
some bugs with handling of very small numbers and has different
solution for formaer patches.
* sysdeps/i386/i586/add_n.S, sysdeps/i386/i586/sub_n.S: Rename
macros r1 and r2 to t1, and t2 resp. This is necessary because
glibc headers also define r1.
1995-12-05 11:35:55 +08:00
|
|
|
(*lineptr)[cur_len] = '\0';
|
Wed May 8 20:04:29 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir).
[! libc.so-version]: Clear static-only-routines.
($(common-objpfx)sor-$(subdir)): New target.
[static-only-routines]: New static pattern rule for these .so's.
* Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed.
[libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so):
New targets replace it.
(install) [libc.so-version]: Depend on $(libdir)/libc.so instead of
$(slibdir)/libc.so.
* io/Makefile (static-only-routines): New variable.
* configure.in: Check for tools objdump and objcopy, and for awk.
* config.make.in (OBJDUMP, OBJCOPY, AWK): New variables.
Thu May 9 01:24:00 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/config.h: Remove definition of wint_t.
* locale/programs/ld-collate.c: Include <wchar.h> instead of
<wcstr.h>.
* manual/time.texi: Add some more description for %U and %W
format of strftime. Describe new format %V of strftime.
* resolv/gethnamaddr.c: Prevent warning by preventing variable
definition.
* stdio-common/_itoa.c: Ditto.
Tue May 7 23:43:07 1996 Ulrich Drepper <drepper@cygnus.com>
* libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c,
libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c,
libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c,
libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c,
libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c,
libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c,
stdio-common/vfscanf.c: Prepare for reentrent libio.
* libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c,
libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c,
libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files.
Used in reentrent libio.
* misc/getusershell.c: Prevent warnings.
1996-05-09 08:37:21 +08:00
|
|
|
result = cur_len;
|
|
|
|
|
|
|
|
unlock_return:
|
Update.
2003-08-29 Jakub Jelinek <jakub@redhat.com>
* libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
putwchar.c and rewind.c with exceptions.
* sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
_IO_release_lock): Define.
* libio/fileops.c (_IO_new_file_underflow): Use it.
* libio/fputc.c (fputc): Likewise.
* libio/fputwc.c (fputwc): Likewise.
* libio/freopen64.c (freopen64):
* libio/freopen.c (freopen): Likewise.
* libio/fseek.c (fseek): Likewise.
* libio/fseeko64.c (fseeko64): Likewise.
* libio/fseeko.c (fseeko): Likewise.
* libio/ftello64.c (ftello64): Likewise.
* libio/ftello.c (ftello): Likewise.
* libio/fwide.c (fwide): Likewise.
* libio/getc.c (_IO_getc): Likewise.
* libio/getchar.c (getchar): Likewise.
* libio/getwc.c (_IO_getwc): Likewise.
* libio/getwchar.c (getwchar): Likewise.
* libio/iofclose.c (_IO_new_fclose):
* libio/iofflush.c (_IO_fflush): Likewise.
* libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
* libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
* libio/iofgets.c (_IO_fgets): Likewise.
* libio/iofgetws.c (fgetws): Likewise.
* libio/iofputs.c (_IO_fputs):
* libio/iofputws.c (_IO_fputs): Likewise.
* libio/iofread.c (_IO_fread): Likewise.
* libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
* libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
* libio/ioftell.c (_IO_ftell): Likewise.
* libio/iofwrite.c (_IO_fwrite): Likewise.
* libio/iogetdelim.c (_IO_getdelim): Likewise.
* libio/iogets.c (_IO_gets): Likewise.
* libio/ioputs.c (_IO_puts): Likewise.
* libio/ioseekoff.c (_IO_seekoff): Likewise.
* libio/ioseekpos.c (_IO_seekpos): Likewise.
* libio/iosetbuffer.c (_IO_setbuffer): Likewise.
* libio/iosetvbuf.c (_IO_setvbuf): Likewise.
* libio/ioungetc.c (_IO_ungetc): Likewise.
* libio/ioungetwc.c (ungetwc): Likewise.
* libio/oldiofclose.c (_IO_old_fclose): Likewise.
* libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
* libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
* libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
* libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
* libio/peekc.c (_IO_peekc_locked): Likewise.
* libio/putc.c (_IO_putc): Likewise.
* libio/putchar.c (putchar): Likewise.
* libio/putwc.c (putwc): Likewise.
* libio/putwchar.c (putwchar): Likewise.
* libio/rewind.c (rewind): Likewise.
* libio/wfileops.c (_IO_wfile_underflow): Likewise.
2003-08-30 03:58:49 +08:00
|
|
|
_IO_release_lock (fp);
|
Wed May 8 20:04:29 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir).
[! libc.so-version]: Clear static-only-routines.
($(common-objpfx)sor-$(subdir)): New target.
[static-only-routines]: New static pattern rule for these .so's.
* Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed.
[libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so):
New targets replace it.
(install) [libc.so-version]: Depend on $(libdir)/libc.so instead of
$(slibdir)/libc.so.
* io/Makefile (static-only-routines): New variable.
* configure.in: Check for tools objdump and objcopy, and for awk.
* config.make.in (OBJDUMP, OBJCOPY, AWK): New variables.
Thu May 9 01:24:00 1996 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/config.h: Remove definition of wint_t.
* locale/programs/ld-collate.c: Include <wchar.h> instead of
<wcstr.h>.
* manual/time.texi: Add some more description for %U and %W
format of strftime. Describe new format %V of strftime.
* resolv/gethnamaddr.c: Prevent warning by preventing variable
definition.
* stdio-common/_itoa.c: Ditto.
Tue May 7 23:43:07 1996 Ulrich Drepper <drepper@cygnus.com>
* libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c,
libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c,
libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c,
libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c,
libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c,
libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c,
stdio-common/vfscanf.c: Prepare for reentrent libio.
* libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c,
libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c,
libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files.
Used in reentrent libio.
* misc/getusershell.c: Prevent warnings.
1996-05-09 08:37:21 +08:00
|
|
|
return result;
|
Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
New files. Slightly modified version from Linux libc.
* libio/memstream.c, libio/vdprintf.c: New files for functions not
(yet) part of GNU libio.
* libio/iofopncook.c: Implementation of `fopencookie', mainly written
by Per Bothner.
* stdio-common/getline.c: Adapted to libio.
* stdio-common/snprintf.c: Adapted to libio.
* stdio-common/vfprintf.c: Adapted to libio.
* stdio-common/vfscanf.c: Adapted to libio.
* sysdeps/posix/tempname.c: Adapted to libio.
1995-11-20 11:48:11 +08:00
|
|
|
}
|
2021-07-08 00:33:52 +08:00
|
|
|
libc_hidden_def (__getdelim)
|
|
|
|
weak_alias (__getdelim, getdelim)
|