From fcdab1e80404570bdb3a24585e616953a3c75b25 Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Wed, 25 Nov 2015 09:40:21 +0100 Subject: [PATCH] [Sharing] Also add sync status to SHARE_STATUS command --- src/gui/socketapi.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/gui/socketapi.cpp b/src/gui/socketapi.cpp index 6dfbfd3fe..1f75ad5d5 100644 --- a/src/gui/socketapi.cpp +++ b/src/gui/socketapi.cpp @@ -435,6 +435,17 @@ void SocketApi::command_SHARE_STATUS(const QString &localFile, QIODevice *socket const QString message = QLatin1String("SHARE_STATUS:NOP:")+QDir::toNativeSeparators(localFile); sendMessage(socket, message); } else { + const QString file = QDir::cleanPath(localFile).mid(shareFolder->cleanPath().length()+1); + SyncFileStatus fileStatus = this->fileStatus(shareFolder, file); + + // Verify the file is on the server (to our knowledge of course) + if (fileStatus.tag() != SyncFileStatus::STATUS_SYNC && + fileStatus.tag() != SyncFileStatus::STATUS_UPDATED) { + const QString message = QLatin1String("SHARE_STATUS:NOTSYNCED:")+QDir::toNativeSeparators(localFile); + sendMessage(socket, message); + return; + } + const Capabilities capabilities = shareFolder->accountState()->account()->capabilities(); if (!capabilities.shareAPI()) { -- 2.30.2