From 104b4f38df174b729430a8c23360c0ce65860de5 Mon Sep 17 00:00:00 2001 From: Stanislav Malyshev Date: Tue, 25 Jul 2000 18:50:02 +0000 Subject: [PATCH] Fix more bugs in browscap # now it shoudl work, but leaks like hell, so don't use it yet --- ext/standard/browscap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ext/standard/browscap.c b/ext/standard/browscap.c index 341832669b..8bfa955670 100644 --- a/ext/standard/browscap.c +++ b/ext/standard/browscap.c @@ -31,7 +31,7 @@ HashTable browser_hash; static int browser_reg_compare(zval **browser,int num_args, va_list args, zend_hash_key *key) { - zval *browser_name; + zval **browser_name; regex_t r; char *lookup_browser_name = va_arg(args,char *); zval **found_browser_entry = va_arg(args,zval **); @@ -43,10 +43,10 @@ static int browser_reg_compare(zval **browser,int num_args, va_list args, zend_h return 0; } - if (!strchr(browser_name->value.str.val,'*')) { + if (!strchr((*browser_name)->value.str.val,'*')) { return 0; } - if (regcomp(&r,browser_name->value.str.val,REG_NOSUB)!=0) { + if (regcomp(&r,(*browser_name)->value.str.val,REG_NOSUB)!=0) { return 0; } if (regexec(&r,lookup_browser_name,0,NULL,0)==0) { @@ -93,7 +93,7 @@ PHP_FUNCTION(get_browser) zend_hash_apply_with_arguments(&browser_hash,(int (*)(void *, int, va_list, zend_hash_key *)) browser_reg_compare,2,lookup_browser_name,&found_browser_entry); if (found_browser_entry) { - *agent = found_browser_entry; + agent = &found_browser_entry; } else if (zend_hash_find(&browser_hash, DEFAULT_SECTION_NAME, sizeof(DEFAULT_SECTION_NAME), (void **) &agent)==FAILURE) { RETURN_FALSE; } -- 2.40.0