From: Dmitry Stogov Date: Wed, 1 Jul 2015 11:08:54 +0000 (+0300) Subject: Cleanup (avoid reallocation). X-Git-Tag: php-7.1.0alpha3~25^2~87 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7d82deab35806c7169d2e40116f236d16cc80f3f;p=php Cleanup (avoid reallocation). --- diff --git a/ext/spl/spl_directory.c b/ext/spl/spl_directory.c index a7d8a32563..bf23c644c9 100644 --- a/ext/spl/spl_directory.c +++ b/ext/spl/spl_directory.c @@ -1546,8 +1546,6 @@ SPL_METHOD(RecursiveDirectoryIterator, getSubPath) SPL_METHOD(RecursiveDirectoryIterator, getSubPathname) { spl_filesystem_object *intern = Z_SPLFILESYSTEM_P(getThis()); - char *sub_name; - size_t len; char slash = SPL_HAS_FLAG(intern->flags, SPL_FILE_DIR_UNIXPATHS) ? '/' : DEFAULT_SLASH; if (zend_parse_parameters_none() == FAILURE) { @@ -1555,9 +1553,7 @@ SPL_METHOD(RecursiveDirectoryIterator, getSubPathname) } if (intern->u.dir.sub_path) { - len = spprintf(&sub_name, 0, "%s%c%s", intern->u.dir.sub_path, slash, intern->u.dir.entry.d_name); - RETVAL_STRINGL(sub_name, len); - efree(sub_name); + RETURN_NEW_STR(strpprintf(0, "%s%c%s", intern->u.dir.sub_path, slash, intern->u.dir.entry.d_name)); } else { RETURN_STRING(intern->u.dir.entry.d_name); }