Fixed issue #63
[m6w6/ext-http] / src / php_http_params.c
index 8988f43c65c0cd33dcd9ff7220304c0c4065d7bd..3ec71b1ddfd83f0d0b9465a26340dc6af903520c 100644 (file)
@@ -118,7 +118,7 @@ static inline void prepare_escaped(zval *zv)
 
 static inline void sanitize_urlencoded(zval *zv)
 {
-       Z_STRLEN_P(zv) = php_raw_url_decode(Z_STRVAL_P(zv), Z_STRLEN_P(zv));
+       Z_STRLEN_P(zv) = php_url_decode(Z_STRVAL_P(zv), Z_STRLEN_P(zv));
 }
 
 static inline void prepare_urlencoded(zval *zv)
@@ -489,7 +489,7 @@ static void merge_param(HashTable *params, zval *zdata, zval **current_param, zv
                        zval *test_ptr;
 
                        while (Z_TYPE_P(zdata_ptr) == IS_ARRAY && (test_ptr = zend_hash_get_current_data(Z_ARRVAL_P(zdata_ptr)))) {
-                               if (Z_TYPE_P(test_ptr) == IS_ARRAY) {
+                               if (Z_TYPE_P(test_ptr) == IS_ARRAY && Z_TYPE_P(ptr) == IS_ARRAY) {
                                        zval *tmp_ptr = ptr;
 
                                        /* now find key in ptr */