summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/filter/sanitizing_filters.c2
-rw-r--r--ext/filter/tests/bug69202.phpt16
-rw-r--r--ext/mysqli/php_mysqli_structs.h1
-rw-r--r--ext/mysqli/tests/bug63486.phpt55
4 files changed, 17 insertions, 57 deletions
diff --git a/ext/filter/sanitizing_filters.c b/ext/filter/sanitizing_filters.c
index 157102f4e5..975e425cf4 100644
--- a/ext/filter/sanitizing_filters.c
+++ b/ext/filter/sanitizing_filters.c
@@ -113,7 +113,7 @@ static void php_filter_strip(zval *value, long flags)
int i, c;
/* Optimization for if no strip flags are set */
- if (! ((flags & FILTER_FLAG_STRIP_LOW) || (flags & FILTER_FLAG_STRIP_HIGH)) ) {
+ if (!(flags & (FILTER_FLAG_STRIP_LOW | FILTER_FLAG_STRIP_HIGH | FILTER_FLAG_STRIP_BACKTICK))) {
return;
}
diff --git a/ext/filter/tests/bug69202.phpt b/ext/filter/tests/bug69202.phpt
new file mode 100644
index 0000000000..992298611f
--- /dev/null
+++ b/ext/filter/tests/bug69202.phpt
@@ -0,0 +1,16 @@
+--TEST--
+Bug #69202 (FILTER_FLAG_STRIP_BACKTICK ignored unless other flags are used)
+--SKIPIF--
+<?php if (!extension_loaded("filter")) die("skip"); ?>
+--FILE--
+<?php
+var_dump(filter_var("``a`b`c``", FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_BACKTICK));
+var_dump(filter_var("``a`b`c``", FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_LOW | FILTER_FLAG_STRIP_BACKTICK));
+var_dump(filter_var("``a`b`c``", FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH | FILTER_FLAG_STRIP_BACKTICK));
+var_dump(filter_var("``a`b`c``", FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_LOW | FILTER_FLAG_STRIP_HIGH));
+?>
+--EXPECT--
+string(3) "abc"
+string(3) "abc"
+string(3) "abc"
+string(9) "``a`b`c``"
diff --git a/ext/mysqli/php_mysqli_structs.h b/ext/mysqli/php_mysqli_structs.h
index e6dafea58c..d061bfb21a 100644
--- a/ext/mysqli/php_mysqli_structs.h
+++ b/ext/mysqli/php_mysqli_structs.h
@@ -313,7 +313,6 @@ extern PHPAPI zend_class_entry *spl_ce_RuntimeException;
mysqli_object *intern = (mysqli_object *)zend_object_store_get_object(*(__id) TSRMLS_CC);\
efree(intern->ptr); \
intern->ptr = NULL; \
- ZVAL_NULL(*__id); \
}
diff --git a/ext/mysqli/tests/bug63486.phpt b/ext/mysqli/tests/bug63486.phpt
deleted file mode 100644
index 72b8663e43..0000000000
--- a/ext/mysqli/tests/bug63486.phpt
+++ /dev/null
@@ -1,55 +0,0 @@
---TEST--
-mysqli_free_resource() - resets the zval to NULL
---SKIPIF--
-<?php
- require_once('skipif.inc');
- require_once('skipifemb.inc');
- require_once('skipifconnectfailure.inc');
-?>
---FILE--
-<?php
- require('connect.inc');
- if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket)) {
- printf("[001] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
- die();
- }
-
- if (!($res = mysqli_query($link, "SELECT 1"))) {
- printf("[002] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
- die();
- }
-
- $row = mysqli_fetch_row($res);
- var_dump($row);
- var_dump($res);
-
- mysqli_free_result($res);
-
- var_dump($row);
- var_dump($res);
-?>
---EXPECTF--
-array(1) {
- [0]=>
- string(1) "1"
-}
-object(mysqli_result)#3 (5) {
- ["current_field"]=>
- int(0)
- ["field_count"]=>
- int(1)
- ["lengths"]=>
- array(1) {
- [0]=>
- int(1)
- }
- ["num_rows"]=>
- int(1)
- ["type"]=>
- int(0)
-}
-array(1) {
- [0]=>
- string(1) "1"
-}
-NULL