- Fixed build on php-trunk
[m6w6/ext-http] / http_headers_api.c
index 1da83aecf54cc9e2744250a9d19e29c6c1c1ff4a..7211304470f48e668441e770ddee46855e26a588 100644 (file)
@@ -6,7 +6,7 @@
     | modification, are permitted provided that the conditions mentioned |
     | in the accompanying LICENSE file are met.                          |
     +--------------------------------------------------------------------+
-    | Copyright (c) 2004-2007, Michael Wallner <mike@php.net>            |
+    | Copyright (c) 2004-2010, Michael Wallner <mike@php.net>            |
     +--------------------------------------------------------------------+
 */
 
@@ -131,7 +131,7 @@ PHP_HTTP_API HashTable *_http_negotiate_q(const char *header, HashTable *support
                ZVAL_STRINGL(&ex_del, ",", 1, 0);
                array_init(&ex_arr);
                
-               php_explode(&ex_del, accept, &ex_arr, -1);
+               php_explode(&ex_del, accept, &ex_arr, INT_MAX);
                
                if (zend_hash_num_elements(Z_ARRVAL(ex_arr)) > 0) {
                        int i = 0;
@@ -501,12 +501,9 @@ PHP_HTTP_API zend_bool _http_match_request_header_ex(const char *header, const c
        http_get_request_headers(NULL);
        name = pretty_key(estrndup(header, name_len), name_len, 1, 1);
        if (SUCCESS == zend_hash_find(HTTP_G->request.headers, name, name_len+1, (void *) &data)) {
-               zvalue = *data;
-               convert_to_string_ex(&zvalue);
+               zvalue = http_zsep(IS_STRING, *data);
                result = (match_case ? strcmp(Z_STRVAL_P(zvalue), value) : strcasecmp(Z_STRVAL_P(zvalue), value)) ? 0 : 1;
-               if (zvalue != *data) {
-                       zval_ptr_dtor(&zvalue);
-               }
+               zval_ptr_dtor(&zvalue);
        }
        efree(name);