diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c index 5fd4c2afa0e..03a39d7e2ea 100644 --- a/ext/mysqli/mysqli_api.c +++ b/ext/mysqli/mysqli_api.c @@ -619,7 +619,7 @@ PHP_FUNCTION(mysqli_change_user) const CHARSET_INFO * old_charset; #endif - if (zend_parse_method_parameters(ZEND_NUM_ARGS(), getThis(), "Osss", &mysql_link, mysqli_link_class_entry, &user, &user_len, &password, &password_len, &dbname, &dbname_len) == FAILURE) { + if (zend_parse_method_parameters(ZEND_NUM_ARGS(), getThis(), "Osss!", &mysql_link, mysqli_link_class_entry, &user, &user_len, &password, &password_len, &dbname, &dbname_len) == FAILURE) { return; } MYSQLI_FETCH_RESOURCE_CONN(mysql, mysql_link, MYSQLI_STATUS_VALID); diff --git a/ext/mysqli/tests/bug74547.phpt b/ext/mysqli/tests/bug74547.phpt new file mode 100644 index 00000000000..a771c9a8524 --- /dev/null +++ b/ext/mysqli/tests/bug74547.phpt @@ -0,0 +1,25 @@ +--TEST-- +Bug #74547 mysqli::change_user() doesn't accept null as $database argument w/strict_types +--SKIPIF-- + +--FILE-- + +===DONE=== +--EXPECTF-- +bool(true) +===DONE===