]> granicus.if.org Git - php/commitdiff
Fixed bug #63186 (compile failure on netbsd)
authorMatteo Beccati <mbeccati@php.net>
Fri, 14 Jun 2013 14:51:54 +0000 (16:51 +0200)
committerMatteo Beccati <mbeccati@php.net>
Fri, 14 Jun 2013 14:51:54 +0000 (16:51 +0200)
NEWS
main/streams/cast.c

diff --git a/NEWS b/NEWS
index 3c5b346335799e99ca7abd565e7ec63520dff848..a0f9e2b0dad0278db544183854efbdcb97040d16 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,7 @@ PHP                                                                        NEWS
   . Fixed bug #64966 (segfault in zend_do_fcall_common_helper_SPEC). (Laruence)
   . Fixed bug #64960 (Segfault in gc_zval_possible_root). (Laruence)
   . Fixed bug #64934 (Apache2 TS crash with get_browser()). (Anatol)
+  . Fixed bug #63186 (compile failure on netbsd). (Matteo)
 
 - DateTime:
   . Fixed bug #53437 (Crash when using unserialized DatePeriod instance).
index 406393043680b48bcb6d393dcd3ba558e214a737..6f79a24e30b5cf24198be32f59586a0384e41fa0 100644 (file)
 
 /* Under BSD, emulate fopencookie using funopen */
 #if defined(HAVE_FUNOPEN) && !defined(HAVE_FOPENCOOKIE)
+
+/* NetBSD 6.0+ uses off_t instead of fpos_t in funopen */
+# if defined(__NetBSD__) && (__NetBSD_Version__ > 600000000)
+#  define PHP_FPOS_T off_t
+# else
+#  define PHP_FPOS_T fpos_t
+# endif
+
 typedef struct {
        int (*reader)(void *, char *, int);
        int (*writer)(void *, const char *, int);
-       fpos_t (*seeker)(void *, fpos_t, int);
+       PHP_FPOS_T (*seeker)(void *, PHP_FPOS_T, int);
        int (*closer)(void *);
 } COOKIE_IO_FUNCTIONS_T;
 
@@ -68,11 +76,11 @@ static int stream_cookie_writer(void *cookie, const char *buffer, int size)
        return php_stream_write((php_stream *)cookie, (char *)buffer, size);
 }
 
-static fpos_t stream_cookie_seeker(void *cookie, off_t position, int whence)
+static PHP_FPOS_T stream_cookie_seeker(void *cookie, off_t position, int whence)
 {
        TSRMLS_FETCH();
 
-       return (fpos_t)php_stream_seek((php_stream *)cookie, position, whence);
+       return (PHP_FPOS_T)php_stream_seek((php_stream *)cookie, position, whence);
 }
 
 static int stream_cookie_closer(void *cookie)