summaryrefslogtreecommitdiff
path: root/includes/filetransfer
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2010-11-19 03:26:14 +0000
committerDries Buytaert <dries@buytaert.net>2010-11-19 03:26:14 +0000
commit0aaf53e52982a0ec39ee1e17475bae6bfc3562c7 (patch)
tree6131743b9840f2267f9e11a9a44fdd0375cf0129 /includes/filetransfer
parent98ee6861a00985fccd0aeacba0d643b24b7bbe41 (diff)
downloadbrdo-0aaf53e52982a0ec39ee1e17475bae6bfc3562c7.tar.gz
brdo-0aaf53e52982a0ec39ee1e17475bae6bfc3562c7.tar.bz2
- Patch #935036 by bfroehle, dww: file exists in FileTransferFTPExtension->createDirectoryJailed().
Diffstat (limited to 'includes/filetransfer')
-rw-r--r--includes/filetransfer/filetransfer.inc2
-rw-r--r--includes/filetransfer/local.inc4
2 files changed, 3 insertions, 3 deletions
diff --git a/includes/filetransfer/filetransfer.inc b/includes/filetransfer/filetransfer.inc
index 1afaa9e0f..db0643612 100644
--- a/includes/filetransfer/filetransfer.inc
+++ b/includes/filetransfer/filetransfer.inc
@@ -208,7 +208,7 @@ abstract class FileTransfer {
$destination = $destination . '/' . basename($source);
}
$this->createDirectory($destination);
- foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($source), RecursiveIteratorIterator::SELF_FIRST) as $filename => $file) {
+ foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($source, FilesystemIterator::SKIP_DOTS), RecursiveIteratorIterator::SELF_FIRST) as $filename => $file) {
$relative_path = substr($filename, strlen($source));
if ($file->isDir()) {
$this->createDirectory($destination . $relative_path);
diff --git a/includes/filetransfer/local.inc b/includes/filetransfer/local.inc
index 8cad200b1..7734b2db8 100644
--- a/includes/filetransfer/local.inc
+++ b/includes/filetransfer/local.inc
@@ -31,7 +31,7 @@ class FileTransferLocal extends FileTransfer implements FileTransferChmodInterfa
// Programmer error assertion, not something we expect users to see.
throw new FileTransferException('removeDirectoryJailed() called with a path (%directory) that is not a directory.', NULL, array('%directory' => $directory));
}
- foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory), RecursiveIteratorIterator::CHILD_FIRST) as $filename => $file) {
+ foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory, FilesystemIterator::SKIP_DOTS), RecursiveIteratorIterator::CHILD_FIRST) as $filename => $file) {
if ($file->isDir()) {
if (@!drupal_rmdir($filename)) {
throw new FileTransferException('Cannot remove directory %directory.', NULL, array('%directory' => $filename));
@@ -64,7 +64,7 @@ class FileTransferLocal extends FileTransfer implements FileTransferChmodInterfa
public function chmodJailed($path, $mode, $recursive) {
if ($recursive && is_dir($path)) {
- foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path), RecursiveIteratorIterator::SELF_FIRST) as $filename => $file) {
+ foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path, FilesystemIterator::SKIP_DOTS), RecursiveIteratorIterator::SELF_FIRST) as $filename => $file) {
if (@!chmod($filename, $mode)) {
throw new FileTransferException('Cannot chmod %path.', NULL, array('%path' => $filename));
}