summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShane Caraveo <shane@php.net>2003-06-30 20:31:57 +0000
committerShane Caraveo <shane@php.net>2003-06-30 20:31:57 +0000
commitd6ee8bab7f8460ad92030ca6ed38bbe5d7cbbba7 (patch)
treeee57dd0f84dcc59e7b528c476b25d6f87f50efb4
parenta62928a3e8d9381216557a0755f596fd3de7aae6 (diff)
downloadphp-git-d6ee8bab7f8460ad92030ca6ed38bbe5d7cbbba7.tar.gz
fix a crash I run into on occasion
-rw-r--r--ext/standard/browscap.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/ext/standard/browscap.c b/ext/standard/browscap.c
index 7555d27938..480690c5e7 100644
--- a/ext/standard/browscap.c
+++ b/ext/standard/browscap.c
@@ -145,7 +145,7 @@ PHP_MINIT_FUNCTION(browscap)
{
char *browscap = INI_STR("browscap");
- if (browscap) {
+ if (browscap && browscap[0]) {
zend_file_handle fh;
memset(&fh, 0, sizeof(fh));
@@ -173,7 +173,8 @@ PHP_MINIT_FUNCTION(browscap)
*/
PHP_MSHUTDOWN_FUNCTION(browscap)
{
- if (INI_STR("browscap")) {
+ char *browscap = INI_STR("browscap");
+ if (browscap && browscap[0]) {
zend_hash_destroy(&browser_hash);
}
return SUCCESS;
@@ -224,8 +225,9 @@ PHP_FUNCTION(get_browser)
zval *found_browser_entry, *tmp_copy;
char *lookup_browser_name;
zend_bool return_array = 0;
+ char *browscap = INI_STR("browscap");
- if (!INI_STR("browscap")) {
+ if (!browscap || !browscap[0]) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "browscap ini directive not set.");
RETURN_FALSE;
}