From fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Wed, 8 Jul 2015 20:46:52 -0400 Subject: Initial commit --- sys/libc/ungetc.c | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 sys/libc/ungetc.c (limited to 'sys/libc/ungetc.c') diff --git a/sys/libc/ungetc.c b/sys/libc/ungetc.c new file mode 100644 index 00000000..2773f4e1 --- /dev/null +++ b/sys/libc/ungetc.c @@ -0,0 +1,29 @@ +/* Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. +*/ + +#define import_spp +#define import_libc +#define import_xnames +#define import_stdio +#include + + +/* UNGETC -- Push a character back into the input stream. Pushback is last +** in first out, i.e., the last character pushed back is the first one +** read by GETC. Characters (and strings) may be pushed back until the +** FIO pushback buffer overflows. +*/ +int +ungetc ( + int ch, + FILE *fp +) +{ + XINT x_fd = fileno(fp); + XCHAR x_ch = ch; + + iferr (UNGETC (&x_fd, &x_ch)) + return (EOF); + else + return (ch); +} -- cgit