]> granicus.if.org Git - php/commitdiff
Move extra checks after zpp in get_browser()
authorNikita Popov <nikita.ppv@gmail.com>
Wed, 6 Nov 2019 16:50:48 +0000 (17:50 +0100)
committerNikita Popov <nikita.ppv@gmail.com>
Wed, 6 Nov 2019 16:50:48 +0000 (17:50 +0100)
ext/standard/browscap.c

index a98810bc4364ac85792ba62e2f5ee5adc26088a0..8e99b925dbafdfda1fea63406d72a3a2092104de 100644 (file)
@@ -686,6 +686,12 @@ PHP_FUNCTION(get_browser)
        browscap_entry *found_entry = NULL;
        HashTable *agent_ht;
 
+       ZEND_PARSE_PARAMETERS_START(0, 2)
+               Z_PARAM_OPTIONAL
+               Z_PARAM_STR_EX(agent_name, 1, 0)
+               Z_PARAM_BOOL(return_array)
+       ZEND_PARSE_PARAMETERS_END();
+
        if (BROWSCAP_G(activation_bdata).filename[0] != '\0') {
                bdata = &BROWSCAP_G(activation_bdata);
                if (bdata->htab == NULL) { /* not initialized yet */
@@ -701,12 +707,6 @@ PHP_FUNCTION(get_browser)
                bdata = &global_bdata;
        }
 
-       ZEND_PARSE_PARAMETERS_START(0, 2)
-               Z_PARAM_OPTIONAL
-               Z_PARAM_STR_EX(agent_name, 1, 0)
-               Z_PARAM_BOOL(return_array)
-       ZEND_PARSE_PARAMETERS_END();
-
        if (agent_name == NULL) {
                zval *http_user_agent = NULL;
                if (Z_TYPE(PG(http_globals)[TRACK_VARS_SERVER]) == IS_ARRAY