Mercurial > hg > octave-shane > gnulib-hg
comparison lib/fflush.c @ 9980:2c1ba629f5d5
New private include file lib/stdio-impl.h.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sat, 26 Apr 2008 18:12:05 +0200 |
parents | 621cb9082339 |
children | e3d6988a9347 |
comparison
equal
deleted
inserted
replaced
9979:078a5c07126b | 9980:2c1ba629f5d5 |
---|---|
25 #include <unistd.h> | 25 #include <unistd.h> |
26 | 26 |
27 #include "freading.h" | 27 #include "freading.h" |
28 #include "fpurge.h" | 28 #include "fpurge.h" |
29 | 29 |
30 #include "stdio-impl.h" | |
31 | |
30 #undef fflush | 32 #undef fflush |
31 | 33 |
32 static inline void | 34 static inline void |
33 clear_ungetc_buffer (FILE *fp) | 35 clear_ungetc_buffer (FILE *fp) |
34 { | 36 { |
35 #if defined __sferror /* FreeBSD, NetBSD, OpenBSD, MacOS X, Cygwin */ | 37 #if defined __sferror /* FreeBSD, NetBSD, OpenBSD, MacOS X, Cygwin */ |
36 # if defined __NetBSD__ || defined __OpenBSD__ | |
37 struct __sfileext | |
38 { | |
39 struct __sbuf _ub; /* ungetc buffer */ | |
40 /* More fields, not relevant here. */ | |
41 }; | |
42 # define HASUB(fp) (((struct __sfileext *) (fp)->_ext._base)->_ub._base != NULL) | |
43 # else | |
44 # define HASUB(fp) ((fp)->_ub._base != NULL) | |
45 # endif | |
46 if (HASUB (fp)) | 38 if (HASUB (fp)) |
47 { | 39 { |
48 fp->_p += stream->_r; | 40 fp->_p += stream->_r; |
49 fp->_r = 0; | 41 fp->_r = 0; |
50 } | 42 } |