From 95836a350420cabc2e8e5f5c45131fba46504a3b Mon Sep 17 00:00:00 2001 From: Xinchen Hui Date: Sat, 20 Sep 2014 15:22:12 +0800 Subject: [PATCH] Avoid strlen usage --- Zend/zend_compile.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 73bc44acd7..bad7bffbd7 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -115,20 +115,19 @@ static zend_string *zend_build_runtime_definition_key(zend_string *name, unsigne { zend_string *result; char char_pos_buf[32]; - size_t char_pos_len = zend_sprintf(char_pos_buf, "%p", lex_pos); + size_t filename_len, char_pos_len = zend_sprintf(char_pos_buf, "%p", lex_pos); const char *filename; if (CG(active_op_array)->filename) { filename = CG(active_op_array)->filename->val; + filename_len = CG(active_op_array)->filename->len; } else { filename = "-"; + filename_len = sizeof("-") - 1; } - /* NULL, name length, filename length, last accepting char position length */ - result = zend_string_alloc(1 + name->len + strlen(filename) + char_pos_len, 0); - - result->val[0] = '\0'; - sprintf(result->val + 1, "%s%s%s", name->val, filename, char_pos_buf); + result = zend_string_alloc(1 + name->len + filename_len + char_pos_len, 0); + sprintf(result->val, "%c%s%s%s", '\0', name->val, filename, char_pos_buf); return result; } /* }}} */ -- 2.40.0