cvs: php-src(PHP_5_2) /ext/filter logical_filters.c /ext/filter/tests 010.phpt 013.phpt filter_data.phpt
| From: | Pierre-Alain Joye | Date: | Thu, 31 Aug 2006 18:29:29 +0000 |
| Subject: | cvs: php-src(PHP_5_2) /ext/filter logical_filters.c /ext/filter/tests 010.phpt 013.phpt filter_data.phpt | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-40257@lists.php.net to get a copy of this message | ||
pajoye Thu Aug 31 18:29:29 2006 UTC
Modified files: (Branch: PHP_5_2)
/php-src/ext/filter logical_filters.c
/php-src/ext/filter/tests 010.phpt 013.phpt filter_data.phpt
Log:
- MFH: pecl bug #8316,
empty strings are not int or float, return false (due to popular demand)
http://cvs.php.net/viewvc.cgi/php-src/ext/filter/logical_filters.c?r1=1.1.2.6&r2=1.1.2.7&diff_format=u
Index: php-src/ext/filter/logical_filters.c
diff -u php-src/ext/filter/logical_filters.c:1.1.2.6 php-src/ext/filter/logical_filters.c:1.1.2.7
--- php-src/ext/filter/logical_filters.c:1.1.2.6 Thu Aug 31 15:50:56 2006
+++ php-src/ext/filter/logical_filters.c Thu Aug 31 18:29:29 2006
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: logical_filters.c,v 1.1.2.6 2006/08/31 15:50:56 pajoye Exp $ */
+/* $Id: logical_filters.c,v 1.1.2.7 2006/08/31 18:29:29 pajoye Exp $ */
#include "php_filter.h"
#include "filter_private.h"
@@ -173,6 +173,14 @@
FETCH_LONG_OPTION(max_range, "max_range");
FETCH_LONG_OPTION(option_flags, "flags");
+ len = Z_STRLEN_P(value);
+
+ if (len == 0) {
+ zval_dtor(value);
+ ZVAL_BOOL(value, 0);
+ return;
+ }
+
if (option_flags_set && (option_flags & FILTER_FLAG_ALLOW_OCTAL)) {
allow_octal = 1;
}
@@ -181,21 +189,6 @@
allow_hex = 1;
}
- len = Z_STRLEN_P(value);
-
- if (len == 0) {
- if ((min_range_set && (0 < min_range)) || (max_range_set && (0 >
max_range))) {
- zval_dtor(value);
- ZVAL_BOOL(value, 0);
- return;
- } else {
- zval_dtor(value);
- Z_TYPE_P(value) = IS_LONG;
- Z_LVAL_P(value) = 0;
- return;
- }
- }
-
/* Start the validating loop */
p = Z_STRVAL_P(value);
ctx_value = 0;
@@ -245,6 +238,7 @@
} else {
zval_dtor(value);
ZVAL_BOOL(value, 0);
+ return;
}
/* returns true for "1", "true", "on" and "yes"
@@ -292,8 +286,7 @@
if (len < 1) {
zval_dtor(value);
- Z_TYPE_P(value) = IS_DOUBLE;
- Z_DVAL_P(value) = 0;
+ ZVAL_BOOL(value, 0);
return;
}
http://cvs.php.net/viewvc.cgi/php-src/ext/filter/tests/010.phpt?r1=1.4&r2=1.4.2.1&diff_format=u
Index: php-src/ext/filter/tests/010.phpt
diff -u php-src/ext/filter/tests/010.phpt:1.4 php-src/ext/filter/tests/010.phpt:1.4.2.1
--- php-src/ext/filter/tests/010.phpt:1.4 Sun May 14 13:54:10 2006
+++ php-src/ext/filter/tests/010.phpt Thu Aug 31 18:29:29 2006
@@ -21,7 +21,7 @@
[1]=>
int(1)
[2]=>
- int(0)
+ bool(false)
[3]=>
int(-23234)
[4]=>
@@ -38,7 +38,7 @@
[1]=>
float(1.7)
[2]=>
- float(0)
+ bool(false)
[3]=>
float(-23234.123)
[4]=>
http://cvs.php.net/viewvc.cgi/php-src/ext/filter/tests/013.phpt?r1=1.7.2.1&r2=1.7.2.2&diff_format=u
Index: php-src/ext/filter/tests/013.phpt
diff -u php-src/ext/filter/tests/013.phpt:1.7.2.1 php-src/ext/filter/tests/013.phpt:1.7.2.2
--- php-src/ext/filter/tests/013.phpt:1.7.2.1 Thu Aug 31 15:50:56 2006
+++ php-src/ext/filter/tests/013.phpt Thu Aug 31 18:29:29 2006
@@ -63,7 +63,7 @@
bool(false)
bool(false)
int(-1)
-int(0)
+bool(false)
bool(false)
bool(false)
bool(false)
http://cvs.php.net/viewvc.cgi/php-src/ext/filter/tests/filter_data.phpt?r1=1.4&r2=1.4.2.1&diff_format=u
Index: php-src/ext/filter/tests/filter_data.phpt
diff -u php-src/ext/filter/tests/filter_data.phpt:1.4
php-src/ext/filter/tests/filter_data.phpt:1.4.2.1
--- php-src/ext/filter/tests/filter_data.phpt:1.4 Sat Jan 21 15:57:43 2006
+++ php-src/ext/filter/tests/filter_data.phpt Thu Aug 31 18:29:29 2006
@@ -46,7 +46,7 @@
int(-123)
int(0)
int(123)
-int(0)
+bool(false)
float(-0.123)
float(0)
@@ -54,7 +54,7 @@
float(-1.23)
float(0)
float(1.23)
-float(0)
+bool(false)
bool(true)
bool(false)