Propagator: On remove move, take size from DB

Some servers can claim different sizes for on-the-fly protected/encrypted
MS Office files during discovery.
This commit is contained in:
Markus Goetz 2016-03-15 10:28:47 +01:00
parent 9460aa7f21
commit 9d5307d04c
1 changed files with 4 additions and 0 deletions

View File

@ -160,6 +160,10 @@ void PropagateRemoteMove::finalize()
record._path = _item->_renameTarget;
record._contentChecksum = oldRecord._contentChecksum;
record._contentChecksumType = oldRecord._contentChecksumType;
if (record._fileSize != oldRecord._fileSize) {
qDebug() << "Warning: file sizes differ on server vs csync_journal: " << record._fileSize << oldRecord._fileSize;
record._fileSize = oldRecord._fileSize; // server might have claimed different size, we take the old one from the DB
}
_propagator->_journal->setFileRecord(record);
_propagator->_journal->commit("Remote Rename");