From 0d063c316a18ce8a8c77948dcc6a6ae32452d758 Mon Sep 17 00:00:00 2001 From: gvmura Date: Fri, 21 Apr 2017 09:53:52 +0200 Subject: avoid duplicate files in google with the same name Signed-off-by: gvmura --- apps/files_external/lib/Lib/Storage/Google.php | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'apps/files_external/lib') diff --git a/apps/files_external/lib/Lib/Storage/Google.php b/apps/files_external/lib/Lib/Storage/Google.php index 2211686055e..0a88ccc8d42 100644 --- a/apps/files_external/lib/Lib/Storage/Google.php +++ b/apps/files_external/lib/Lib/Storage/Google.php @@ -386,6 +386,19 @@ class Google extends \OC\Files\Storage\Common { } public function rename($path1, $path2) { + // Avoid duplicate files with the same name + $testRegex = '/^.+\.ocTransferId\d+\.part$/'; + if (preg_match($testRegex, $path1)) { + if ($this->is_file($path2)) { + $testFile2 = $this->getDriveFile($path2); + if ($testFile2) { + $this->service->files->trash($testFile2->getId()); + \OCP\Util::writeLog('files_external', 'trash file '.$path2. + ' for renaming '.$path1.' on Google Drive.', \OCP\Util::DEBUG); + } + } + } + $file = $this->getDriveFile($path1); if ($file) { $newFile = $this->getDriveFile($path2); -- cgit v1.2.3