svn: /php/php-src/ branches/PHP_5_3/main/php_variables.c branches/PHP_5_4/main/php_variables.c trunk/main/php_variables.c
| From: | Dmitry Stogov | Date: | Thu, 22 Dec 2011 15:31:41 +0000 |
| Subject: | svn: /php/php-src/ branches/PHP_5_3/main/php_variables.c branches/PHP_5_4/main/php_variables.c trunk/main/php_variables.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-67325@lists.php.net to get a copy of this message | ||
dmitry Thu, 22 Dec 2011 15:31:41 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=321335
Log:
Change fatal error into warning and ignore arguments over limit
Changed paths:
U php/php-src/branches/PHP_5_3/main/php_variables.c
U php/php-src/branches/PHP_5_4/main/php_variables.c
U php/php-src/trunk/main/php_variables.c
Modified: php/php-src/branches/PHP_5_3/main/php_variables.c
===================================================================
--- php/php-src/branches/PHP_5_3/main/php_variables.c 2011-12-22 13:28:01 UTC (rev 321334)
+++ php/php-src/branches/PHP_5_3/main/php_variables.c 2011-12-22 15:31:41 UTC (rev 321335)
@@ -191,12 +191,14 @@
}
if (zend_symtable_find(symtable1, escaped_index, index_len + 1, (void **) &gpc_element_p)
== FAILURE
|| Z_TYPE_PP(gpc_element_p) != IS_ARRAY) {
- if (zend_hash_num_elements(symtable1) >= PG(max_input_vars)) {
- php_error_docref(NULL TSRMLS_CC, E_ERROR, "Input variables exceeded %ld. To increase the
limit change max_input_vars in php.ini.", PG(max_input_vars));
+ if (zend_hash_num_elements(symtable1) <= PG(max_input_vars)) {
+ if (zend_hash_num_elements(symtable1) == PG(max_input_vars)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Input variables exceeded %ld. To increase
the limit change max_input_vars in php.ini.", PG(max_input_vars));
+ }
+ MAKE_STD_ZVAL(gpc_element);
+ array_init(gpc_element);
+ zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval
*), (void **) &gpc_element_p);
}
- MAKE_STD_ZVAL(gpc_element);
- array_init(gpc_element);
- zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval
*), (void **) &gpc_element_p);
}
if (index != escaped_index) {
efree(escaped_index);
@@ -239,10 +241,14 @@
zend_symtable_exists(symtable1, escaped_index, index_len + 1)) {
zval_ptr_dtor(&gpc_element);
} else {
- if (zend_hash_num_elements(symtable1) >= PG(max_input_vars)) {
- php_error_docref(NULL TSRMLS_CC, E_ERROR, "Input variables exceeded %ld. To increase the
limit change max_input_vars in php.ini.", PG(max_input_vars));
+ if (zend_hash_num_elements(symtable1) <= PG(max_input_vars)) {
+ if (zend_hash_num_elements(symtable1) == PG(max_input_vars)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Input variables exceeded %ld. To increase
the limit change max_input_vars in php.ini.", PG(max_input_vars));
+ }
+ zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval
*), (void **) &gpc_element_p);
+ } else {
+ zval_ptr_dtor(&gpc_element);
}
- zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval *),
(void **) &gpc_element_p);
}
if (escaped_index != index) {
efree(escaped_index);
Modified: php/php-src/branches/PHP_5_4/main/php_variables.c
===================================================================
--- php/php-src/branches/PHP_5_4/main/php_variables.c 2011-12-22 13:28:01 UTC (rev 321334)
+++ php/php-src/branches/PHP_5_4/main/php_variables.c 2011-12-22 15:31:41 UTC (rev 321335)
@@ -179,12 +179,14 @@
escaped_index = index;
if (zend_symtable_find(symtable1, escaped_index, index_len + 1, (void **) &gpc_element_p)
== FAILURE
|| Z_TYPE_PP(gpc_element_p) != IS_ARRAY) {
- if (zend_hash_num_elements(symtable1) >= PG(max_input_vars)) {
- php_error_docref(NULL TSRMLS_CC, E_ERROR, "Input variables exceeded %ld. To increase the
limit change max_input_vars in php.ini.", PG(max_input_vars));
+ if (zend_hash_num_elements(symtable1) <= PG(max_input_vars)) {
+ if (zend_hash_num_elements(symtable1) == PG(max_input_vars)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Input variables exceeded %ld. To increase
the limit change max_input_vars in php.ini.", PG(max_input_vars));
+ }
+ MAKE_STD_ZVAL(gpc_element);
+ array_init(gpc_element);
+ zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval
*), (void **) &gpc_element_p);
}
- MAKE_STD_ZVAL(gpc_element);
- array_init(gpc_element);
- zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval
*), (void **) &gpc_element_p);
}
if (index != escaped_index) {
efree(escaped_index);
@@ -223,10 +225,14 @@
zend_symtable_exists(symtable1, escaped_index, index_len + 1)) {
zval_ptr_dtor(&gpc_element);
} else {
- if (zend_hash_num_elements(symtable1) >= PG(max_input_vars)) {
- php_error_docref(NULL TSRMLS_CC, E_ERROR, "Input variables exceeded %ld. To increase the
limit change max_input_vars in php.ini.", PG(max_input_vars));
+ if (zend_hash_num_elements(symtable1) <= PG(max_input_vars)) {
+ if (zend_hash_num_elements(symtable1) == PG(max_input_vars)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Input variables exceeded %ld. To increase
the limit change max_input_vars in php.ini.", PG(max_input_vars));
+ }
+ zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval
*), (void **) &gpc_element_p);
+ } else {
+ zval_ptr_dtor(&gpc_element);
}
- zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval *),
(void **) &gpc_element_p);
}
if (escaped_index != index) {
efree(escaped_index);
Modified: php/php-src/trunk/main/php_variables.c
===================================================================
--- php/php-src/trunk/main/php_variables.c 2011-12-22 13:28:01 UTC (rev 321334)
+++ php/php-src/trunk/main/php_variables.c 2011-12-22 15:31:41 UTC (rev 321335)
@@ -179,12 +179,14 @@
escaped_index = index;
if (zend_symtable_find(symtable1, escaped_index, index_len + 1, (void **) &gpc_element_p)
== FAILURE
|| Z_TYPE_PP(gpc_element_p) != IS_ARRAY) {
- if (zend_hash_num_elements(symtable1) >= PG(max_input_vars)) {
- php_error_docref(NULL TSRMLS_CC, E_ERROR, "Input variables exceeded %ld. To increase the
limit change max_input_vars in php.ini.", PG(max_input_vars));
+ if (zend_hash_num_elements(symtable1) <= PG(max_input_vars)) {
+ if (zend_hash_num_elements(symtable1) == PG(max_input_vars)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Input variables exceeded %ld. To increase
the limit change max_input_vars in php.ini.", PG(max_input_vars));
+ }
+ MAKE_STD_ZVAL(gpc_element);
+ array_init(gpc_element);
+ zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval
*), (void **) &gpc_element_p);
}
- MAKE_STD_ZVAL(gpc_element);
- array_init(gpc_element);
- zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval
*), (void **) &gpc_element_p);
}
if (index != escaped_index) {
efree(escaped_index);
@@ -223,10 +225,14 @@
zend_symtable_exists(symtable1, escaped_index, index_len + 1)) {
zval_ptr_dtor(&gpc_element);
} else {
- if (zend_hash_num_elements(symtable1) >= PG(max_input_vars)) {
- php_error_docref(NULL TSRMLS_CC, E_ERROR, "Input variables exceeded %ld. To increase the
limit change max_input_vars in php.ini.", PG(max_input_vars));
+ if (zend_hash_num_elements(symtable1) <= PG(max_input_vars)) {
+ if (zend_hash_num_elements(symtable1) == PG(max_input_vars)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Input variables exceeded %ld. To increase
the limit change max_input_vars in php.ini.", PG(max_input_vars));
+ }
+ zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval
*), (void **) &gpc_element_p);
+ } else {
+ zval_ptr_dtor(&gpc_element);
}
- zend_symtable_update(symtable1, escaped_index, index_len + 1, &gpc_element, sizeof(zval *),
(void **) &gpc_element_p);
}
if (escaped_index != index) {
efree(escaped_index);