projects
/
fw
/
pdclib
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
scanf() returns -1 on early input error.
[fw/pdclib]
/
functions
/
stdio
/
vfscanf.c
diff --git
a/functions/stdio/vfscanf.c
b/functions/stdio/vfscanf.c
index 8f121e95e4a73cac03d000cf6a96132e2163e5ab..e1c8b4b40efd8fd28040cbf47600647ab0e9e4bb 100644
(file)
--- a/
functions/stdio/vfscanf.c
+++ b/
functions/stdio/vfscanf.c
@@
-53,10
+53,14
@@
int vfscanf( FILE * _PDCLIB_restrict stream, const char * _PDCLIB_restrict forma
if ( ( ( c = getc( stream ) ) != *format ) || feof( stream ) ) /* TODO: Check EOF status directly */
{
/* Matching error */
if ( ( ( c = getc( stream ) ) != *format ) || feof( stream ) ) /* TODO: Check EOF status directly */
{
/* Matching error */
- if ( ! feof( stream ) ) /* TODO: Check EOF status directly */
+ if ( ! feof( stream )
&& ! ferror( stream )
) /* TODO: Check EOF status directly */
{
ungetc( c, stream );
}
{
ungetc( c, stream );
}
+ else if ( status.n == 0 )
+ {
+ return EOF;
+ }
return status.n;
}
else
return status.n;
}
else