mirror of
https://github.com/nextcloud/desktop.git
synced 2024-10-24 13:25:52 +03:00
ensure any errors after calling FileSystem::getModTime are handled
be sure that even in release mode no errors when calling getModTime could be ignored Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
This commit is contained in:
parent
384c4bb3f8
commit
3e82466d5e
4 changed files with 14 additions and 0 deletions
|
@ -164,6 +164,12 @@ void BulkPropagatorJob::doStartUpload(SyncFileItemPtr item,
|
|||
fileToUpload._file = item->_file = item->_renameTarget;
|
||||
fileToUpload._path = propagator()->fullLocalPath(fileToUpload._file);
|
||||
item->_modtime = FileSystem::getModTime(newFilePathAbsolute);
|
||||
if (item->_modtime <= 0) {
|
||||
_pendingChecksumFiles.remove(item->_file);
|
||||
slotOnErrorStartFolderUnlock(item, SyncFileItem::NormalError, tr("File %1 has invalid modified time. Do not upload to the server.").arg(QDir::toNativeSeparators(item->_file)));
|
||||
checkPropagationIsDone();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
const auto remotePath = propagator()->fullRemotePath(fileToUpload._file);
|
||||
|
|
|
@ -772,6 +772,10 @@ bool OwncloudPropagator::createConflict(const SyncFileItemPtr &item,
|
|||
|
||||
QString renameError;
|
||||
auto conflictModTime = FileSystem::getModTime(fn);
|
||||
if (conflictModTime <= 0) {
|
||||
*error = tr("Impossible to get modification time for file in conflict %1)").arg(fn);
|
||||
return false;
|
||||
}
|
||||
QString conflictUserName;
|
||||
if (account()->capabilities().uploadConflictFiles())
|
||||
conflictUserName = account()->davDisplayName();
|
||||
|
|
|
@ -599,6 +599,7 @@ void PropagateDownloadFile::conflictChecksumComputed(const QByteArray &checksumT
|
|||
Q_ASSERT(_item->_modtime > 0);
|
||||
if (_item->_modtime <= 0) {
|
||||
qCWarning(lcPropagateDownload()) << "invalid modified time" << _item->_file << _item->_modtime;
|
||||
return;
|
||||
}
|
||||
if (_item->_modtime != _item->_previousModtime) {
|
||||
Q_ASSERT(_item->_modtime > 0);
|
||||
|
@ -609,6 +610,7 @@ void PropagateDownloadFile::conflictChecksumComputed(const QByteArray &checksumT
|
|||
Q_ASSERT(_item->_modtime > 0);
|
||||
if (_item->_modtime <= 0) {
|
||||
qCWarning(lcPropagateDownload()) << "invalid modified time" << _item->_file << _item->_modtime;
|
||||
return;
|
||||
}
|
||||
updateMetadata(/*isConflict=*/false);
|
||||
return;
|
||||
|
|
|
@ -213,6 +213,8 @@ void PropagateUploadFileCommon::start()
|
|||
Q_ASSERT(_item->_modtime > 0);
|
||||
if (_item->_modtime <= 0) {
|
||||
qCWarning(lcPropagateUpload()) << "invalid modified time" << _item->_file << _item->_modtime;
|
||||
slotOnErrorStartFolderUnlock(SyncFileItem::NormalError, tr("File %1 has invalid modified time. Do not upload to the server.").arg(QDir::toNativeSeparators(_item->_file)));
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue