summaryrefslogtreecommitdiffstats
path: root/apps/files_external/lib/streamwrapper.php
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files_external/lib/streamwrapper.php')
-rw-r--r--apps/files_external/lib/streamwrapper.php8
1 files changed, 8 insertions, 0 deletions
diff --git a/apps/files_external/lib/streamwrapper.php b/apps/files_external/lib/streamwrapper.php
index a110c006529..4a63dfb6e02 100644
--- a/apps/files_external/lib/streamwrapper.php
+++ b/apps/files_external/lib/streamwrapper.php
@@ -17,6 +17,14 @@ abstract class StreamWrapper extends Common {
public function rmdir($path) {
if ($this->file_exists($path)) {
+ $dh = $this->opendir($path);
+ while (($file = readdir($dh)) !== false) {
+ if ($this->is_dir($path . '/' . $file)) {
+ $this->rmdir($path . '/' . $file);
+ } else {
+ $this->unlink($path . '/' . $file);
+ }
+ }
$success = rmdir($this->constructUrl($path));
clearstatcache();
return $success;