summaryrefslogtreecommitdiff
path: root/ext/readline/readline_cli.c
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2019-04-12 11:01:56 +0200
committerNikita Popov <nikita.ppv@gmail.com>2019-04-12 11:01:56 +0200
commitedcf087ff914b05ab63e1ca126e31538da14bfe2 (patch)
tree237c9ffc731fe2f2264556fa21309d4a7f928303 /ext/readline/readline_cli.c
parente5edbd0fe611c87363db5fc98fdb6e5177c00b11 (diff)
downloadphp-git-edcf087ff914b05ab63e1ca126e31538da14bfe2.tar.gz
Avoid potentially-uninitialized warnings in readline
Diffstat (limited to 'ext/readline/readline_cli.c')
-rw-r--r--ext/readline/readline_cli.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/ext/readline/readline_cli.c b/ext/readline/readline_cli.c
index 053954955c..956386c532 100644
--- a/ext/readline/readline_cli.c
+++ b/ext/readline/readline_cli.c
@@ -521,13 +521,12 @@ TODO:
retval = cli_completion_generator_ini(text, textlen, &cli_completion_state);
} else {
char *lc_text, *class_name_end;
- size_t class_name_len;
- zend_string *class_name;
+ zend_string *class_name = NULL;
zend_class_entry *ce = NULL;
class_name_end = strstr(text, "::");
if (class_name_end) {
- class_name_len = class_name_end - text;
+ size_t class_name_len = class_name_end - text;
class_name = zend_string_alloc(class_name_len, 0);
zend_str_tolower_copy(ZSTR_VAL(class_name), text, class_name_len);
if ((ce = zend_lookup_class(class_name)) == NULL) {
@@ -561,11 +560,11 @@ TODO:
break;
}
efree(lc_text);
- if (class_name_end) {
+ if (class_name) {
zend_string_release_ex(class_name, 0);
}
if (ce && retval) {
- size_t len = class_name_len + 2 + strlen(retval) + 1;
+ size_t len = ZSTR_LEN(ce->name) + 2 + strlen(retval) + 1;
char *tmp = malloc(len);
snprintf(tmp, len, "%s::%s", ZSTR_VAL(ce->name), retval);