From 0634a4d0c6eec0ff14f1c9df4d72f73ad809250d Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Mon, 13 Apr 2015 15:10:04 +0200 Subject: [PATCH] Discovery: Add a sanity check when results are parsed --- src/libsync/discoveryphase.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/libsync/discoveryphase.cpp b/src/libsync/discoveryphase.cpp index b8c580a12..9c36c1286 100644 --- a/src/libsync/discoveryphase.cpp +++ b/src/libsync/discoveryphase.cpp @@ -285,6 +285,13 @@ void DiscoverySingleDirectoryJob::directoryListingIteratedSlot(QString file,QMap void DiscoverySingleDirectoryJob::lsJobFinishedWithoutErrorSlot() { + if (!_ignoredFirst) { + // This is a sanity check, if we haven't _ignoredFirst then it means we never received any directoryListingIteratedSlot + // which means somehow the server XML was bogus + emit finishedWithError(ERRNO_WRONG_CONTENT, QLatin1String("Server error: PROPFIND reply is not XML formatted!")); + deleteLater(); + return; + } emit etagConcatenation(_etagConcatenation); emit finishedWithResult(_results); deleteLater(); -- 2.30.2