From 822e9b6e5669c406974c32f59b55e67c0b079455 Mon Sep 17 00:00:00 2001 From: Marcus Boerger Date: Tue, 22 Oct 2002 18:39:05 +0000 Subject: [PATCH] Fix this extension. #The problem was that the extension suspected the hash list to be a #straight forward list with no closed elements. --- ext/db/db.c | 42 +++++++++++++++++++++++++++++++++++++++--- 1 file changed, 39 insertions(+), 3 deletions(-) diff --git a/ext/db/db.c b/ext/db/db.c index ea23bfd55b..c730fddba6 100644 --- a/ext/db/db.c +++ b/ext/db/db.c @@ -166,8 +166,8 @@ dbm_info *php_find_dbm(pval *id TSRMLS_DC) int info_type; if (Z_TYPE_P(id) == IS_STRING) { - numitems = zend_hash_num_elements(&EG(regular_list)); - for (i=1; i<=numitems; i++) { + numitems = zend_hash_next_free_element(&EG(regular_list)); + for (i=1; ifilename */ +#if 0_HELLY +/* New function not needed yet */ +PHP_FUNCTION(db_id_list) +{ + ulong numitems, i; + zend_rsrc_list_entry *le; + dbm_info *info; + + if (ZEND_NUM_ARGS()!=0) { + ZEND_WRONG_PARAM_COUNT(); + RETURN_FALSE; + } + + if (array_init(return_value) == FAILURE) { + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Unable to initialize array"); + RETURN_FALSE; + } + numitems = zend_hash_next_free_element(&EG(regular_list)); + for (i=1; iptr); + add_next_index_string(return_value, info->filename, 1); + } + } +} +/* }}} */ +#endif + /* {{{ php_get_info_db */ static char *php_get_info_db(void) @@ -369,7 +402,7 @@ dbm_info *php_dbm_open(char *filename, char *mode TSRMLS_DC) if (dbf) { info = (dbm_info *)emalloc(sizeof(dbm_info)); if (!info) { - php_error_docref1(NULL TSRMLS_CC, filename, E_ERROR, "Oroblem allocating memory!"); + php_error_docref1(NULL TSRMLS_CC, filename, E_ERROR, "Problem allocating memory!"); return NULL; } @@ -1150,6 +1183,9 @@ function_entry dbm_functions[] = { PHP_FE(dbmdelete, NULL) PHP_FE(dbmfirstkey, NULL) PHP_FE(dbmnextkey, NULL) +#if 0_HELLY + PHP_FE(db_id_list, NULL) +#endif {NULL, NULL, NULL} }; /* }}} */ -- 2.50.1