/* 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) {