From: Xinchen Hui Date: Wed, 1 Nov 2017 07:30:41 +0000 (+0800) Subject: Use zend_get_executed_filename_ex X-Git-Tag: php-7.3.0alpha1~1115 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2a37625c20032d54af55a88d54d1a3a1ecc068d1;p=php Use zend_get_executed_filename_ex --- diff --git a/Zend/zend_constants.c b/Zend/zend_constants.c index 100d0a263b..219e313813 100644 --- a/Zend/zend_constants.c +++ b/Zend/zend_constants.c @@ -210,15 +210,13 @@ static zend_constant *zend_get_special_constant(const char *name, size_t name_le return NULL; } else if (name_len == sizeof("__COMPILER_HALT_OFFSET__")-1 && !memcmp(name, "__COMPILER_HALT_OFFSET__", sizeof("__COMPILER_HALT_OFFSET__")-1)) { - const char *cfilename; + zend_string *cfilename; zend_string *haltname; - size_t clen; - cfilename = zend_get_executed_filename(); - clen = strlen(cfilename); + cfilename = zend_get_executed_filename_ex(); /* check for __COMPILER_HALT_OFFSET__ */ haltname = zend_mangle_property_name(haltoff, - sizeof("__COMPILER_HALT_OFFSET__") - 1, cfilename, clen, 0); + sizeof("__COMPILER_HALT_OFFSET__") - 1, ZSTR_VAL(cfilename), ZSTR_LEN(cfilename), 0); c = zend_hash_find_ptr(EG(zend_constants), haltname); zend_string_free(haltname); return c; diff --git a/Zend/zend_exceptions.c b/Zend/zend_exceptions.c index c892f701e3..20eb3c5200 100644 --- a/Zend/zend_exceptions.c +++ b/Zend/zend_exceptions.c @@ -222,9 +222,8 @@ static zend_object *zend_default_exception_new_ex(zend_class_entry *class_type, base_ce = i_get_exception_base(&obj); if (EXPECTED(class_type != zend_ce_parse_error || !(filename = zend_get_compiled_filename()))) { - ZVAL_STRING(&tmp, zend_get_executed_filename()); + ZVAL_STR(&tmp, zend_get_executed_filename_ex()); zend_update_property_ex(base_ce, &obj, ZSTR_KNOWN(ZEND_STR_FILE), &tmp); - zval_ptr_dtor(&tmp); ZVAL_LONG(&tmp, zend_get_executed_lineno()); zend_update_property_ex(base_ce, &obj, ZSTR_KNOWN(ZEND_STR_LINE), &tmp); } else { diff --git a/ext/standard/assert.c b/ext/standard/assert.c index 87462185a8..a03418030d 100644 --- a/ext/standard/assert.c +++ b/ext/standard/assert.c @@ -219,11 +219,9 @@ PHP_FUNCTION(assert) zval *args = safe_emalloc(!description ? 3 : 4, sizeof(zval), 0); zval retval; int i; - uint32_t lineno = zend_get_executed_lineno(); - const char *filename = zend_get_executed_filename(); - ZVAL_STRING(&args[0], SAFE_STRING(filename)); - ZVAL_LONG (&args[1], lineno); + ZVAL_STR_COPY(&args[0], zend_get_executed_filename_ex()); + ZVAL_LONG (&args[1], zend_get_executed_lineno()); ZVAL_STRING(&args[2], SAFE_STRING(myeval)); ZVAL_FALSE(&retval); diff --git a/ext/standard/mail.c b/ext/standard/mail.c index 3762bb8bda..8fe3de6622 100644 --- a/ext/standard/mail.c +++ b/ext/standard/mail.c @@ -521,10 +521,10 @@ PHPAPI int php_mail(char *to, char *subject, char *message, char *headers, char } if (PG(mail_x_header)) { - const char *tmp = zend_get_executed_filename(); + zend_string *tmp = zend_get_executed_filename_ex(); zend_string *f; - f = php_basename(tmp, strlen(tmp), NULL, 0); + f = php_basename(ZSTR_VAL(tmp), ZSTR_LEN(tmp), NULL, 0); if (headers != NULL && *headers) { spprintf(&hdr, 0, "X-PHP-Originating-Script: " ZEND_LONG_FMT ":%s\n%s", php_getuid(), ZSTR_VAL(f), headers);