fix Bug #15497 HttpInflateStream::finish segfaults when passing NULL
[m6w6/ext-http] / php_http_api.h
index a490347b211cdf4daf7165bc4a87b2ac7ab64c55..fa0c1c89594f46d770e146f611f98b9bb4f3e215 100644 (file)
@@ -168,9 +168,9 @@ static inline void _http_sleep(double s)
 #define HTTP_MLLISEC (1000)
 #define HTTP_MCROSEC (1000 * 1000)
 #define HTTP_NANOSEC (1000 * 1000 * 1000)
-#define HTTP_MSEC(s) (s * HTTP_MLLISEC)
-#define HTTP_USEC(s) (s * HTTP_MCROSEC)
-#define HTTP_NSEC(s) (s * HTTP_NANOSEC)
+#define HTTP_MSEC(s) ((long)(s * HTTP_MLLISEC))
+#define HTTP_USEC(s) ((long)(s * HTTP_MCROSEC))
+#define HTTP_NSEC(s) ((long)(s * HTTP_NANOSEC))
 
 #if defined(PHP_WIN32)
        Sleep((DWORD) HTTP_MSEC(s));
@@ -227,7 +227,7 @@ static inline const char *_http_locate_body(const char *message)
                        if (*(msg+1) == '\n') {
                                body = msg + 2;
                                break;
-                       } else if (*(msg+1) == '\r' && *(msg+2) == '\n' && msg != message && *(msg-1) == '\r') {
+                       } else if (*(msg+1) == '\r' && *(msg+2) == '\n') {
                                body = msg + 3;
                                break;
                        }
@@ -322,10 +322,10 @@ typedef struct _HashKey {
 #define array_copy(src, dst) zend_hash_copy(dst, src, (copy_ctor_func_t) zval_add_ref, NULL, sizeof(zval *))
 #define ARRAY_JOIN_STRONLY 1
 #define ARRAY_JOIN_PRETTIFY 2
-#define array_join(src, dst, append, flags) zend_hash_apply_with_arguments(src, (append)?apply_array_append_func:apply_array_merge_func, 2, dst, (int)flags)
+#define array_join(src, dst, append, flags) zend_hash_apply_with_arguments(src HTTP_ZAPI_HASH_TSRMLS_CC, (append)?apply_array_append_func:apply_array_merge_func, 2, dst, (int)flags)
 
-extern int apply_array_append_func(void *pDest, int num_args, va_list args, zend_hash_key *hash_key);
-extern int apply_array_merge_func(void *pDest, int num_args, va_list args, zend_hash_key *hash_key);
+extern int apply_array_append_func(void *pDest HTTP_ZAPI_HASH_TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key);
+extern int apply_array_merge_func(void *pDest HTTP_ZAPI_HASH_TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key);
 
 #endif