diff options
author | Andrei Zmievski <andrei@php.net> | 2000-10-20 18:25:16 +0000 |
---|---|---|
committer | Andrei Zmievski <andrei@php.net> | 2000-10-20 18:25:16 +0000 |
commit | 7b4983c8f82c4f361df787f58c6f5cf88d5def0b (patch) | |
tree | e38e8ffceb65a0f2492b28e2b07c8668fcddeda4 /ext/mysql/php_mysql.c | |
parent | a0cfab65ea72963f81a3440a3587d11bd7800337 (diff) | |
download | php-git-7b4983c8f82c4f361df787f58c6f5cf88d5def0b.tar.gz |
Mega-patch to get better resource information for modules.
* Fixed a bug in zend_rsrc_list_get_rsrc_type()
* Switched register_list_destructors() to use
zend_register_list_destructors_ex() instead
* Updated all relevant modules to provide the resource type name
to register_list_destructors() call
* Updated var_dump() to output resource type name instead of number
@- Made resource type names visible, e.g. var_dump() and
@ get_resource_type() display "file" for file resources. (Andrei)
Diffstat (limited to 'ext/mysql/php_mysql.c')
-rw-r--r-- | ext/mysql/php_mysql.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/ext/mysql/php_mysql.c b/ext/mysql/php_mysql.c index 8f06268260..c5fc943e62 100644 --- a/ext/mysql/php_mysql.c +++ b/ext/mysql/php_mysql.c @@ -164,8 +164,9 @@ void timeout(int sig); * This wrapper is required since mysql_free_result() returns an integer, and * thus, cannot be used directly */ -static void _free_mysql_result(MYSQL_RES *mysql_result) +static void _free_mysql_result(zend_rsrc_list_entry *rsrc) { + MYSQL_RES *mysql_result = (MYSQL_RES *)rsrc->ptr; mysql_free_result(mysql_result); } @@ -182,8 +183,9 @@ static void php_mysql_set_default_link(int id) } -static void _close_mysql_link(MYSQL *link) +static void _close_mysql_link(zend_rsrc_list_entry *rsrc) { + MYSQL *link = (MYSQL *)rsrc->ptr; void (*handler) (int); MySLS_FETCH(); @@ -194,8 +196,9 @@ static void _close_mysql_link(MYSQL *link) MySG(num_links)--; } -static void _close_mysql_plink(MYSQL *link) +static void _close_mysql_plink(zend_rsrc_list_entry *rsrc) { + MYSQL *link = (MYSQL *)rsrc->ptr; void (*handler) (int); MySLS_FETCH(); @@ -258,9 +261,9 @@ PHP_MINIT_FUNCTION(mysql) ZEND_INIT_MODULE_GLOBALS(mysql, php_mysql_init_globals, NULL); REGISTER_INI_ENTRIES(); - le_result = register_list_destructors(_free_mysql_result,NULL); - le_link = register_list_destructors(_close_mysql_link,NULL); - le_plink = register_list_destructors(NULL,_close_mysql_plink); + le_result = register_list_destructors(_free_mysql_result,NULL,"mysql result"); + le_link = register_list_destructors(_close_mysql_link,NULL, "mysql link"); + le_plink = register_list_destructors(NULL,_close_mysql_plink, "mysql link persistent"); mysql_module_entry.type = type; REGISTER_LONG_CONSTANT("MYSQL_ASSOC", MYSQL_ASSOC, CONST_CS | CONST_PERSISTENT); |