This is the mail archive of the newlib-cvs@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[newlib-cygwin] newlib: vf[w]scanf: Only return from a single point to simplify cleanup


https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=2e328edee411d4f21603417fedf218b44260e788

commit 2e328edee411d4f21603417fedf218b44260e788
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Thu Nov 30 11:36:04 2017 +0100

    newlib: vf[w]scanf: Only return from a single point to simplify cleanup
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 newlib/libc/stdio/vfscanf.c  | 3 +--
 newlib/libc/stdio/vfwscanf.c | 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/newlib/libc/stdio/vfscanf.c b/newlib/libc/stdio/vfscanf.c
index c5fcae5..b6b90c8 100644
--- a/newlib/libc/stdio/vfscanf.c
+++ b/newlib/libc/stdio/vfscanf.c
@@ -1623,8 +1623,7 @@ input_failure:
      should have been set prior to here.  On EOF failure (including
      invalid format string), return EOF if no matches yet, else number
      of matches made prior to failure.  */
-  _newlib_flockfile_exit (fp);
-  return nassigned && !(fp->_flags & __SERR) ? nassigned : EOF;
+  nassigned = nassigned && !(fp->_flags & __SERR) ? nassigned : EOF;
 match_failure:
 all_done:
   /* Return number of matches, which can be 0 on match failure.  */
diff --git a/newlib/libc/stdio/vfwscanf.c b/newlib/libc/stdio/vfwscanf.c
index fd4f1f9..3b0e113 100644
--- a/newlib/libc/stdio/vfwscanf.c
+++ b/newlib/libc/stdio/vfwscanf.c
@@ -1469,8 +1469,7 @@ input_failure:
      should have been set prior to here.  On EOF failure (including
      invalid format string), return EOF if no matches yet, else number
      of matches made prior to failure.  */
-  _newlib_flockfile_exit (fp);
-  return nassigned && !(fp->_flags & __SERR) ? nassigned : EOF;
+  nassigned = nassigned && !(fp->_flags & __SERR) ? nassigned : EOF;
 match_failure:
 all_done:
   /* Return number of matches, which can be 0 on match failure.  */


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]