From: Stanislav Malyshev Date: Tue, 13 Mar 2007 00:04:38 +0000 (+0000) Subject: fix odbc resource handling, patch by Dave Lawson X-Git-Tag: php-5.2.2RC1~161 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c3e4a2854a1eb075c2d059ec69b9e3a83a49cd20;p=php fix odbc resource handling, patch by Dave Lawson --- diff --git a/ext/odbc/php_odbc.c b/ext/odbc/php_odbc.c index d82e0efaa1..2c2b0b7978 100644 --- a/ext/odbc/php_odbc.c +++ b/ext/odbc/php_odbc.c @@ -915,11 +915,10 @@ PHP_FUNCTION(odbc_prepare) } else { result->values = NULL; } - result->id = zend_list_insert(result, le_result); zend_list_addref(conn->id); result->conn_ptr = conn; result->fetched = 0; - RETURN_RESOURCE(result->id); + ZEND_REGISTER_RESOURCE(return_value, result, le_result); } /* }}} */ @@ -1335,12 +1334,10 @@ PHP_FUNCTION(odbc_exec) } else { result->values = NULL; } - result->id = zend_list_insert(result, le_result); zend_list_addref(conn->id); result->conn_ptr = conn; result->fetched = 0; - - RETURN_RESOURCE(result->id); + ZEND_REGISTER_RESOURCE(return_value, result, le_result); } /* }}} */ @@ -2044,7 +2041,7 @@ PHP_FUNCTION(odbc_free_result) result->values = NULL; } - zend_list_delete(result->id); + zend_list_delete(Z_LVAL_PP(pv_res)); RETURN_TRUE; } diff --git a/ext/odbc/php_odbc_includes.h b/ext/odbc/php_odbc_includes.h index d812621148..fc5bb47a28 100644 --- a/ext/odbc/php_odbc_includes.h +++ b/ext/odbc/php_odbc_includes.h @@ -236,7 +236,6 @@ typedef struct odbc_result_value { typedef struct odbc_result { ODBC_SQL_STMT_T stmt; - int id; odbc_result_value *values; SWORD numcols; SWORD numparams;