From: David Svoboda Date: Wed, 2 Apr 2014 09:13:02 +0000 (-0400) Subject: manual: clarify buffer behavior in getline [BZ #5666] X-Git-Tag: glibc-2.20~652 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1c21d115e3e47cd66007341de4bae5c4b0a2d547;p=platform%2Fupstream%2Fglibc.git manual: clarify buffer behavior in getline [BZ #5666] If the user has requested automatic buffer creation, getline may create it and not free things when an error occurs. That means the user is always responsible for calling free() regardless of the return value. The current documentation does not explicitly cover this which leaves it slightly ambiguous to the reader. So clarify things. URL: https://sourceware.org/bugzilla/show_bug.cgi?id=5666 --- diff --git a/ChangeLog b/ChangeLog index 7a1c106..da8ea6d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2014-04-03 David Svoboda + + [BZ #5666] + * manual/stdio.texi (Line-Oriented Input): Document buffer allocation + explicitly. + 2014-04-03 Roland McGrath * elf/dl-unmap-segments.h: New file. diff --git a/manual/stdio.texi b/manual/stdio.texi index a4364f7..efdaaad 100644 --- a/manual/stdio.texi +++ b/manual/stdio.texi @@ -1298,7 +1298,8 @@ back in @code{*@var{n}}. If you set @code{*@var{lineptr}} to a null pointer, and @code{*@var{n}} to zero, before the call, then @code{getline} allocates the initial -buffer for you by calling @code{malloc}. +buffer for you by calling @code{malloc}. This buffer remains allocated +even if @code{getline} encounters errors and is unable to read any bytes. In either case, when @code{getline} returns, @code{*@var{lineptr}} is a @code{char *} which points to the text of the line.