diff options
author | Dmitry Stogov <dmitry@php.net> | 2008-07-17 09:52:51 +0000 |
---|---|---|
committer | Dmitry Stogov <dmitry@php.net> | 2008-07-17 09:52:51 +0000 |
commit | 0cfa6a59778a53afb2138a86db8cd5fa0bc00900 (patch) | |
tree | 9c6757377202c7802453d1fa59180f235f81cd5a /ext/mysqli/mysqli_api.c | |
parent | c92e6b4a6b56239b14f7ca7bcdab0966dd63f3b5 (diff) | |
download | php-git-0cfa6a59778a53afb2138a86db8cd5fa0bc00900.tar.gz |
support for closures
Diffstat (limited to 'ext/mysqli/mysqli_api.c')
-rw-r--r-- | ext/mysqli/mysqli_api.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c index 8c8c3c32b5..1850facd4d 100644 --- a/ext/mysqli/mysqli_api.c +++ b/ext/mysqli/mysqli_api.c @@ -1457,7 +1457,7 @@ PHP_FUNCTION(mysqli_set_local_infile_handler) { MY_MYSQL *mysql; zval *mysql_link; - zval callback_name, *p_callback_name; + zval callback_name; zval *callback_func; if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "Oz", &mysql_link, mysqli_link_class_entry, @@ -1467,7 +1467,7 @@ PHP_FUNCTION(mysqli_set_local_infile_handler) MYSQLI_FETCH_RESOURCE(mysql, MY_MYSQL *, &mysql_link, "mysqli_link", MYSQLI_STATUS_VALID); - if (UG(unicode)) { + if (UG(unicode) && Z_TYPE_P(callback_func) != IS_ARRAY && Z_TYPE_P(callback_func) != IS_OBJECT) { convert_to_string(callback_func); } @@ -1477,6 +1477,7 @@ PHP_FUNCTION(mysqli_set_local_infile_handler) zval_dtor(&callback_name); RETURN_FALSE; } + zval_dtor(&callback_name); /* save callback function */ if (!mysql->li_read) { @@ -1484,8 +1485,7 @@ PHP_FUNCTION(mysqli_set_local_infile_handler) } else { zval_dtor(mysql->li_read); } - p_callback_name = &callback_name; - ZVAL_ZVAL(mysql->li_read, p_callback_name, 0, 0); + ZVAL_ZVAL(mysql->li_read, callback_func, 1, 0); RETURN_TRUE; } |