Skip to content
Snippets Groups Projects
Commit a7929477 authored by Thomas Müller's avatar Thomas Müller
Browse files

Merge pull request #4960 from owncloud/fixing-mirall-1014-master

handle error situation of rename proper
parents 88d5e8fb e9eb34f1
No related branches found
No related tags found
No related merge requests found
...@@ -88,7 +88,13 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa ...@@ -88,7 +88,13 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa
} }
// rename to correct path // rename to correct path
\OC\Files\Filesystem::rename($partpath, $newPath); $renameOkay = \OC\Files\Filesystem::rename($partpath, $newPath);
$fileExists = \OC\Files\Filesystem::file_exists($newPath);
if ($renameOkay === false || $fileExists === false) {
\OC_Log::write('webdav', '\OC\Files\Filesystem::rename() failed', \OC_Log::ERROR);
\OC\Files\Filesystem::unlink($partpath);
throw new Sabre_DAV_Exception();
}
// allow sync clients to send the mtime along in a header // allow sync clients to send the mtime along in a header
$mtime = OC_Request::hasModificationTime(); $mtime = OC_Request::hasModificationTime();
......
...@@ -74,7 +74,14 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D ...@@ -74,7 +74,14 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D
} }
// rename to correct path // rename to correct path
\OC\Files\Filesystem::rename($partpath, $this->path); $renameOkay = \OC\Files\Filesystem::rename($partpath, $this->path);
$fileExists = \OC\Files\Filesystem::file_exists($this->path);
if ($renameOkay === false || $fileExists === false) {
\OC_Log::write('webdav', '\OC\Files\Filesystem::rename() failed', \OC_Log::ERROR);
\OC\Files\Filesystem::unlink($partpath);
throw new Sabre_DAV_Exception();
}
//allow sync clients to send the mtime along in a header //allow sync clients to send the mtime along in a header
$mtime = OC_Request::hasModificationTime(); $mtime = OC_Request::hasModificationTime();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment