From: Wez Furlong Date: Sun, 30 Apr 2006 01:27:33 +0000 (+0000) Subject: Fix #36632 X-Git-Tag: RELEASE_1_0_3~8 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=07e11dcc4d9be59a364530d24d302a5634321791;p=php Fix #36632 --- diff --git a/NEWS b/NEWS index 353e1d5985..44250a0a78 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,7 @@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?? ??? 2006, PHP 5.2.0 - Fixed bug #35552 (crash when pdo_odbc prepare fails). (Wez). +- Fixed bug #36632 (bad error reporting for pdo_odbc exec UPDATE). (Wez). 28 Apr 2006, PHP 5.1.3 - Updated bundled PCRE library to version 6.6. (Andrei) diff --git a/ext/pdo_odbc/odbc_driver.c b/ext/pdo_odbc/odbc_driver.c index 8309b23a5a..5585cecf38 100755 --- a/ext/pdo_odbc/odbc_driver.c +++ b/ext/pdo_odbc/odbc_driver.c @@ -234,6 +234,14 @@ static long odbc_handle_doer(pdo_dbh_t *dbh, const char *sql, long sql_len TSRML rc = SQLExecDirect(stmt, (char *)sql, sql_len); + if (rc == SQL_NO_DATA) { + /* If SQLExecDirect executes a searched update or delete statement that + * does not affect any rows at the data source, the call to + * SQLExecDirect returns SQL_NO_DATA. */ + row_count = 0; + goto out; + } + if (rc != SQL_SUCCESS && rc != SQL_SUCCESS_WITH_INFO) { pdo_odbc_doer_error("SQLExecDirect"); goto out;