Fixed bug #15800
[m6w6/ext-http] / http_headers_api.c
index 1da83aecf54cc9e2744250a9d19e29c6c1c1ff4a..4c0d2f4c152dc84446b482cbe5b7fade3b3f1d7b 100644 (file)
@@ -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);