}
}
- // TODO check permissions
+ // TODO make sure these are the correct permissions
+ if (!QFileInfo(newFilePath).isWritable())
+ {
+ fl.failedRename = true;
+ db->setFileLocation(fl);
+ db->log(tr("Rename: Failed to rename file <%1>. Destination directory <%2> is not writable.").arg(oldFile.canonicalFilePath()).arg(newFile.absolutePath()), 2);
+ continue;
+ }
+
+ if (!QFileInfo(oldFile.absolutePath()).isWritable())
+ {
+ fl.failedRename = true;
+ db->setFileLocation(fl);
+ db->log(tr("Rename: Failed to rename file <%1>. File directory is not writable.").arg(oldFile.canonicalFilePath()), 2);
+ continue;
+ }
+
+#ifdef Q_OS_WIN
+ if (!oldFile.isWritable())
+ {
+ fl.failedRename = true;
+ db->setFileLocation(fl);
+ db->log(tr("Rename: Failed to rename file <%1>. File is not writable.").arg(oldFile.canonicalFilePath()), 2);
+ continue;
+ }
+#endif
if (!QFile::rename(oldFile.canonicalFilePath(), newFileString))
{