musl - musl - an implementation of the standard library for Linux-based systems

index : musl
musl - an implementation of the standard library for Linux-based systems
summary refs log tree commit diff
path: root/src/stdio
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2019年10月18日 21:11:44 -0400
committerRich Felker <dalias@aerifal.cx>2019年10月18日 21:11:44 -0400
commitf6ecd0c296181bf6a2a7f54e3406c846500e8e63 (patch)
tree17f37f0b034b3df439b2d76a5aa5bd9492a88065 /src/stdio
parentbff78954995b115e469aadb7636357798978fffd (diff)
downloadmusl-f6ecd0c296181bf6a2a7f54e3406c846500e8e63.tar.gz
fix return value of ungetc when argument is outside unsigned char range
aside from the special value EOF, ungetc is specified to accept and convert values outside the range of unsigned char. conversion takes place automatically as part of assignment when storing into the buffer, but the return value is also required to be the resulting converted value, and this requirement was not satisfied. simplified from patch by Wang Jianjian.
Diffstat (limited to 'src/stdio')
-rw-r--r--src/stdio/ungetc.c 2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/stdio/ungetc.c b/src/stdio/ungetc.c
index 180673a4..bc629d4c 100644
--- a/src/stdio/ungetc.c
+++ b/src/stdio/ungetc.c
@@ -16,5 +16,5 @@ int ungetc(int c, FILE *f)
f->flags &= ~F_EOF;
FUNLOCK(f);
- return c;
+ return (unsigned char)c;
}
generated by cgit v1.2.1 (git 2.18.0) at 2025年09月09日 03:37:13 +0000

AltStyle によって変換されたページ (->オリジナル) /