From: Julien Pauli Date: Fri, 20 Feb 2015 14:40:46 +0000 (+0100) Subject: Merge branch 'PHP-5.6' X-Git-Tag: PRE_PHP7_EREG_MYSQL_REMOVALS~102 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=72af5cda276a661c73b36d31f60ac4d6ddd85b93;p=php Merge branch 'PHP-5.6' * PHP-5.6: fix #68557 Conflicts: ext/spl/spl_directory.c --- 72af5cda276a661c73b36d31f60ac4d6ddd85b93 diff --cc ext/spl/spl_directory.c index fd5e08ee66,7cc67d79a3..9e51626cbd --- a/ext/spl/spl_directory.c +++ b/ext/spl/spl_directory.c @@@ -192,18 -202,21 +192,21 @@@ static inline void spl_filesystem_objec { char slash = SPL_HAS_FLAG(intern->flags, SPL_FILE_DIR_UNIXPATHS) ? '/' : DEFAULT_SLASH; - if (!intern->file_name) { - switch (intern->type) { + switch (intern->type) { case SPL_FS_INFO: case SPL_FS_FILE: - php_error_docref(NULL, E_ERROR, "Object not initialized"); + if (!intern->file_name) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Object not initialized"); ++ php_error_docref(NULL, E_ERROR, "Object not initialized"); + } break; case SPL_FS_DIR: + if (intern->file_name) { + efree(intern->file_name); + } - intern->file_name_len = spprintf(&intern->file_name, 0, "%s%c%s", - spl_filesystem_object_get_path(intern, NULL TSRMLS_CC), + intern->file_name_len = (int)spprintf(&intern->file_name, 0, "%s%c%s", + spl_filesystem_object_get_path(intern, NULL), slash, intern->u.dir.entry.d_name); break; - } } } /* }}} */