From: Georg Richter Date: Thu, 27 Jan 2005 10:20:21 +0000 (+0000) Subject: MFH: fix for bug #31710 X-Git-Tag: php-5.0.4RC1~236 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2b3b798d7dac8c17ae76390d95f29e3cc9724794;p=php MFH: fix for bug #31710 --- diff --git a/NEWS b/NEWS index 393e0ce40b..c91b64497f 100644 --- a/NEWS +++ b/NEWS @@ -11,6 +11,8 @@ PHP NEWS - Fixed a bug in mysqli_stmt_execute() (type conversion with NULL values). (Georg) - Fixed segfault in mysqli_fetch_field_direct() when invalid field offset is passed. (Tony) +- Fixed bug #31710 (Wrong return values for mysqli_autocommit/commit/rollback). + (Georg) - Fixed bug #31684 (dio_tcsetattr(): misconfigured termios settings). (elod at itfais dot com) - Fixed bug #31699 (unserialize() float problem on non-English locales). (Ilia) diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c index f403105a92..263b362a28 100644 --- a/ext/mysqli/mysqli_api.c +++ b/ext/mysqli/mysqli_api.c @@ -54,7 +54,6 @@ PHP_FUNCTION(mysqli_autocommit) { MY_MYSQL *mysql; zval *mysql_link; - unsigned long rc; unsigned long automode; if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "Ob", &mysql_link, mysqli_link_class_entry, &automode) == FAILURE) { @@ -62,9 +61,10 @@ PHP_FUNCTION(mysqli_autocommit) } MYSQLI_FETCH_RESOURCE(mysql, MY_MYSQL *, &mysql_link, "mysqli_link"); - rc = (long) mysql_autocommit(mysql->mysql, automode); - - RETURN_BOOL(rc); + if (mysql_autocommit(mysql->mysql, automode)) { + RETURN_FALSE; + } + RETURN_TRUE; } /* }}} */ @@ -418,14 +418,15 @@ PHP_FUNCTION(mysqli_commit) { MY_MYSQL *mysql; zval *mysql_link; - ulong rc; if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O", &mysql_link, mysqli_link_class_entry) == FAILURE) { return; } MYSQLI_FETCH_RESOURCE(mysql, MY_MYSQL *, &mysql_link, "mysqli_link"); - rc = mysql_commit(mysql->mysql); - RETURN_BOOL(rc); + if (mysql_commit(mysql->mysql)) { + RETURN_FALSE; + } + RETURN_TRUE; } /* }}} */ @@ -1398,7 +1399,10 @@ PHP_FUNCTION(mysqli_rollback) } MYSQLI_FETCH_RESOURCE(mysql, MY_MYSQL *, &mysql_link, "mysqli_link"); - RETURN_BOOL(mysql_rollback(mysql->mysql)); + if (mysql_rollback(mysql->mysql)) { + RETURN_FALSE; + } + RETURN_TRUE; } /* }}} */