summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2014-04-08 13:05:01 (GMT)
committerChristian Mollekopf <chrigi_1@fastmail.fm>2014-04-08 13:05:01 (GMT)
commit62f1c49bc8b0c1ef314a910d16adf49f97278b88 (patch)
treef94b0b5d867b39f99e57ae6263992435f954d183
parent74013991621ae5b688e7a71aefe759a6ec12cda5 (diff)
downloadlibcalendaring-62f1c49bc8b0c1ef314a910d16adf49f97278b88.tar.gz
Applied a fix for the kimap bug that ends up filling the harddrive with logmessages.
Same patch as 2bc7588fc: Handle properly inconsistent parser state by closing the session BUG: 287424
-rw-r--r--kimap/sessionthread.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/kimap/sessionthread.cpp b/kimap/sessionthread.cpp
index b7a1cb9..a7bfc59 100644
--- a/kimap/sessionthread.cpp
+++ b/kimap/sessionthread.cpp
@@ -107,8 +107,11 @@ void SessionThread::readMessage()
}
*payload << Message::Part(literal);
} else {
- // Oops! Something really bad happened
- throw ImapParserException( "Inconsistent state, probably due to some packet loss" );
+ // Oops! Something really bad happened, we won't be able to recover
+ // so close the socket immediately
+ qWarning( "Inconsistent state, probably due to some packet loss" );
+ doCloseSocket();
+ return;
}
}