summaryrefslogtreecommitdiff
path: root/src/sp_var_value.c
diff options
context:
space:
mode:
authorSylvain "caillou" Lefevre2021-01-03 20:40:37 +0100
committerjvoisin2021-01-03 20:41:29 +0100
commit1e8e75b554955cc59866a41bb32853a96e8e83ae (patch)
tree6cfb5b33409ce7df73dbd3c0e4b7a834ed27ce7d /src/sp_var_value.c
parent3c528d9d03cec872382a6f400b5701a8fbfd59b4 (diff)
Don't fallback to local variables when unable to get function parameter
Diffstat (limited to 'src/sp_var_value.c')
-rw-r--r--src/sp_var_value.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/src/sp_var_value.c b/src/sp_var_value.c
index 8109377..986ea2d 100644
--- a/src/sp_var_value.c
+++ b/src/sp_var_value.c
@@ -51,7 +51,6 @@ static zval *get_local_var(zend_execute_data *ed, const char *var_name) {
51static zval *get_constant(const char *value) { 51static zval *get_constant(const char *value) {
52 zend_string *name = zend_string_init(value, strlen(value), 0); 52 zend_string *name = zend_string_init(value, strlen(value), 0);
53 zval *zvalue = zend_get_constant_ex(name, NULL, ZEND_FETCH_CLASS_SILENT); 53 zval *zvalue = zend_get_constant_ex(name, NULL, ZEND_FETCH_CLASS_SILENT);
54
55 zend_string_release(name); 54 zend_string_release(name);
56 return zvalue; 55 return zvalue;
57} 56}
@@ -69,14 +68,10 @@ static zval *get_var_value(zend_execute_data *ed, const char *var_name,
69 } 68 }
70 69
71 if (is_param) { 70 if (is_param) {
72 zval *zvalue = get_param_var(ed, var_name); 71 return get_param_var(ed, var_name);
73 if (!zvalue) { 72 } else {
74 return get_local_var(ed, var_name); 73 return get_local_var(ed, var_name);
75 }
76 return zvalue;
77 } 74 }
78
79 return get_local_var(ed, var_name);
80} 75}
81 76
82static void *get_entry_hashtable(const HashTable *ht, const char *entry, 77static void *get_entry_hashtable(const HashTable *ht, const char *entry,