summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2020-01-28 11:16:53 +0100
committerNikita Popov <nikita.ppv@gmail.com>2020-01-28 11:20:57 +0100
commit521c4051083d79255a52aa427d073727e3cc000a (patch)
tree388bef64329761223a965f48d785073a6ec4bacb
parentac9a265f01385f50718f732b1a5badd2f31469b4 (diff)
downloadphp-git-521c4051083d79255a52aa427d073727e3cc000a.tar.gz
Don't index NULL pointer when fetching non-existent constant
-rw-r--r--Zend/zend_constants.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/Zend/zend_constants.c b/Zend/zend_constants.c
index 0885525676..958bd36d1d 100644
--- a/Zend/zend_constants.c
+++ b/Zend/zend_constants.c
@@ -454,12 +454,15 @@ failure:
}
}
- if (!(flags & ZEND_FETCH_CLASS_SILENT)) {
- if (!c) {
+ if (!c) {
+ if (!(flags & ZEND_FETCH_CLASS_SILENT)) {
zend_throw_error(NULL, "Undefined constant '%s'", name);
- } else if (ZEND_CONSTANT_FLAGS(c) & CONST_DEPRECATED) {
- zend_error(E_DEPRECATED, "Constant %s is deprecated", name);
}
+ return NULL;
+ }
+
+ if (!(flags & ZEND_FETCH_CLASS_SILENT) && (ZEND_CONSTANT_FLAGS(c) & CONST_DEPRECATED)) {
+ zend_error(E_DEPRECATED, "Constant %s is deprecated", name);
}
return &c->value;
}