summaryrefslogtreecommitdiff
path: root/ext/hyperwave/hw.c
diff options
context:
space:
mode:
authorAndrei Zmievski <andrei@php.net>2000-10-20 18:25:16 +0000
committerAndrei Zmievski <andrei@php.net>2000-10-20 18:25:16 +0000
commit7b4983c8f82c4f361df787f58c6f5cf88d5def0b (patch)
treee38e8ffceb65a0f2492b28e2b07c8668fcddeda4 /ext/hyperwave/hw.c
parenta0cfab65ea72963f81a3440a3587d11bd7800337 (diff)
downloadphp-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/hyperwave/hw.c')
-rw-r--r--ext/hyperwave/hw.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/ext/hyperwave/hw.c b/ext/hyperwave/hw.c
index e530e92b52..69dbe97c0a 100644
--- a/ext/hyperwave/hw.c
+++ b/ext/hyperwave/hw.c
@@ -132,8 +132,9 @@ ZEND_GET_MODULE(hw)
void print_msg(hg_msg *msg, char *str, int txt);
-void _close_hw_link(hw_connection *conn)
+void _close_hw_link(zend_rsrc_list_entry *rsrc)
{
+ hw_connection *conn = (hw_connection *)rsrc->ptr;
if(conn->hostname)
free(conn->hostname);
if(conn->username)
@@ -143,8 +144,9 @@ void _close_hw_link(hw_connection *conn)
HwSG(num_links)--;
}
-void _close_hw_plink(hw_connection *conn)
+void _close_hw_plink(zend_rsrc_list_entry *rsrc)
{
+ hw_connection *conn = (hw_connection *)rsrc->ptr;
if(conn->hostname)
free(conn->hostname);
if(conn->username)
@@ -155,8 +157,9 @@ void _close_hw_plink(hw_connection *conn)
HwSG(num_persistent)--;
}
-void _free_hw_document(hw_document *doc)
+void _free_hw_document(zend_rsrc_list_entry *rsrc)
{
+ hw_document *doc = (hw_document *)rsrc->ptr;
if(doc->data)
free(doc->data);
if(doc->attributes)
@@ -191,9 +194,9 @@ PHP_MINIT_FUNCTION(hw) {
ZEND_INIT_MODULE_GLOBALS(hw, php_hw_init_globals, NULL);
REGISTER_INI_ENTRIES();
- HwSG(le_socketp) = register_list_destructors(_close_hw_link,NULL);
- HwSG(le_psocketp) = register_list_destructors(NULL,_close_hw_plink);
- HwSG(le_document) = register_list_destructors(_free_hw_document,NULL);
+ HwSG(le_socketp) = register_list_destructors(_close_hw_link,NULL, "hyperwave link");
+ HwSG(le_psocketp) = register_list_destructors(NULL,_close_hw_plink, "hyperwave link persistent");
+ HwSG(le_document) = register_list_destructors(_free_hw_document,NULL, "hyperwave document");
hw_module_entry.type = type;
REGISTER_LONG_CONSTANT("HW_ATTR_LANG", HW_ATTR_LANG, CONST_CS | CONST_PERSISTENT);