mirror of
https://github.com/nextcloud/desktop.git
synced 2024-10-24 13:25:52 +03:00
Propagator: properly send the success flag (#5189)
In case of the root directory, it may happen that the _item is empty and the _item->_status is NoStatus. But we still need to report the proper success or error of the whole propagation. We should really use _hasError for that. However, _hasError is also defined to NoStatus if there was no error, so in that case we need to set Success. This fixes the problem in which the data-fingerprint is not saved on the database because the SyncEngine think that the sync failed. (Issue #5185)
This commit is contained in:
parent
ff701bd473
commit
98bfa8d5de
1 changed files with 2 additions and 2 deletions
|
@ -686,14 +686,14 @@ void PropagateDirectory::finalize()
|
|||
SyncJournalFileRecord record(*_item, _propagator->_localDir + _item->_file);
|
||||
ok = _propagator->_journal->setFileRecordMetadata(record);
|
||||
if (!ok) {
|
||||
_item->_status = SyncFileItem::FatalError;
|
||||
_hasError = _item->_status = SyncFileItem::FatalError;
|
||||
_item->_errorString = tr("Error writing metadata to the database");
|
||||
qWarning() << "Error writing to the database for file" << _item->_file;
|
||||
}
|
||||
}
|
||||
}
|
||||
_state = Finished;
|
||||
emit finished(_item->_status);
|
||||
emit finished(_hasError == SyncFileItem::NoStatus ? SyncFileItem::Success : _hasError);
|
||||
}
|
||||
|
||||
qint64 PropagateDirectory::committedDiskSpace() const
|
||||
|
|
Loading…
Reference in a new issue