summaryrefslogtreecommitdiff
path: root/lib/freadseek.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/freadseek.c')
-rw-r--r--lib/freadseek.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/freadseek.c b/lib/freadseek.c
index 4145173e..ea28d878 100644
--- a/lib/freadseek.c
+++ b/lib/freadseek.c
@@ -1,5 +1,5 @@
/* Skipping input from a FILE stream.
- Copyright (C) 2007-2012 Free Software Foundation, Inc.
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -30,13 +30,15 @@
/* Increment the in-memory pointer. INCREMENT must be at most the buffer size
returned by freadptr().
This is very cheap (no system calls). */
-static inline void
+static void
freadptrinc (FILE *fp, size_t increment)
{
/* Keep this code in sync with freadptr! */
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if HAVE___FREADPTRINC /* musl libc */
+ __freadptrinc (fp, increment);
+#elif defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
fp->_IO_read_ptr += increment;
-#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, MacOS X, Cygwin */
+#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
fp_->_p += increment;
fp_->_r -= increment;
#elif defined __EMX__ /* emx+gcc */