tony2001 Mon Feb 19 20:22:29 2007 UTC
Modified files:
/php-src/ext/odbc php_odbc.c
Log:
check SQLError() return value and output a meaningful errmsg when it fails
http://cvs.php.net/viewvc.cgi/php-src/ext/odbc/php_odbc.c?r1=1.199&r2=1.200&diff_format=u
Index: php-src/ext/odbc/php_odbc.c
diff -u php-src/ext/odbc/php_odbc.c:1.199 php-src/ext/odbc/php_odbc.c:1.200
--- php-src/ext/odbc/php_odbc.c:1.199 Tue Jan 16 18:56:55 2007
+++ php-src/ext/odbc/php_odbc.c Mon Feb 19 20:22:29 2007
@@ -20,7 +20,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_odbc.c,v 1.199 2007/01/16 18:56:55 iliaa Exp $ */
+/* $Id: php_odbc.c,v 1.200 2007/02/19 20:22:29 tony2001 Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -587,6 +587,10 @@
do {
*/
rc = SQLError(henv, conn, stmt, state, &error, errormsg,
sizeof(errormsg)-1, &errormsgsize);
+ if (rc != SQL_SUCCESS && rc != SQL_SUCCESS_WITH_INFO) {
+ sprintf(state, "HY000");
+ sprintf(errormsg, "Failed to fetch error message");
+ }
if (conn_resource) {
memcpy(conn_resource->laststate, state, sizeof(state));
memcpy(conn_resource->lasterrormsg, errormsg, sizeof(errormsg));
@@ -1217,7 +1221,7 @@
if (rc != SQL_SUCCESS) {
/* ummm.... he did it */
- odbc_sql_error(conn, NULL, "SQLDataSources");
+ odbc_sql_error(conn, SQL_NULL_HSTMT, "SQLDataSources");
RETURN_FALSE;
}
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php