mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-28 00:21:52 +03:00
2.5-18.1
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2002, 2003
|
||||
/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2002, 2003, 2005
|
||||
Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
@ -41,6 +41,14 @@ _IO_fgets (buf, n, fp)
|
||||
CHECK_FILE (fp, NULL);
|
||||
if (n <= 0)
|
||||
return NULL;
|
||||
if (__builtin_expect (n == 1, 0))
|
||||
{
|
||||
/* Another irregular case: since we have to store a NUL byte and
|
||||
there is only room for exactly one byte, we don't have to
|
||||
read anything. */
|
||||
buf[0] = '\0';
|
||||
return buf;
|
||||
}
|
||||
_IO_acquire_lock (fp);
|
||||
/* This is very tricky since a file descriptor may be in the
|
||||
non-blocking mode. The error flag doesn't mean much in this
|
||||
|
Reference in New Issue
Block a user