From: Marcus Boerger Date: Sat, 30 Oct 2004 14:33:25 +0000 (+0000) Subject: strip trailing (back)slash from path X-Git-Tag: RELEASE_0_2~801 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e2ba10a727f038b236b9eede74af8f0bf4f9ec58;p=php strip trailing (back)slash from path --- diff --git a/ext/spl/spl_directory.c b/ext/spl/spl_directory.c index 11c09a26be..da063f7736 100755 --- a/ext/spl/spl_directory.c +++ b/ext/spl/spl_directory.c @@ -120,9 +120,14 @@ static zend_object_value spl_ce_dir_object_new(zend_class_entry *class_type TSRM /* open a directory resource */ static void spl_ce_dir_open(spl_ce_dir_object* intern, char *path TSRMLS_DC) { + int path_len = strlen(path); intern->dirp = php_stream_opendir(path, ENFORCE_SAFE_MODE|REPORT_ERRORS, NULL); - intern->path = estrdup(path); + if (path_len && (path[path_len-1] == '/' || path[path_len-1] == '\\')) { + intern->path = estrndup(path, --path_len); + } else { + intern->path = estrndup(path, path_len); + } intern->index = 0; if (intern->dirp == NULL) {