logic: Fixed crashes and halting during indexing

* Fixed CPPSqliteException being thrown due to not properly destructed statement in addError
* Fixed indexer getting stuck after building caches because MessageFinishedParsing was interrupted
* removed Message::cancel() method and all related code

bug id = 105
This commit is contained in:
Eberhard Graether
2016-06-29 14:10:26 +02:00
parent ba3316008a
commit cba0cfad65
13 changed files with 78 additions and 83 deletions
-12
View File
@@ -11,7 +11,6 @@ public:
: m_isReplayed(false)
, m_sendAsTask(true)
, m_keepContent(false)
, m_cancelled(false)
, m_isLast(true)
, m_isLogged(true)
{
@@ -74,16 +73,6 @@ public:
return m_keepContent;
}
void cancel()
{
m_cancelled = true;
}
bool cancelled()
{
return m_cancelled;
}
virtual void print(std::ostream& os) const = 0;
std::string str() const
@@ -98,7 +87,6 @@ private:
bool m_isReplayed;
bool m_sendAsTask;
bool m_keepContent;
bool m_cancelled;
bool m_isLast;
bool m_isLogged;
};
+1 -6
View File
@@ -253,11 +253,6 @@ void MessageQueue::sendMessage(std::shared_ptr<MessageBase> message)
listener->handleMessageBase(message.get());
m_listenersMutex.lock();
}
if (message->cancelled())
{
break;
}
}
}
@@ -277,7 +272,7 @@ void MessageQueue::sendMessageAsTask(std::shared_ptr<MessageBase> message, bool
[listenerId, message]()
{
MessageListenerBase* listener = MessageQueue::getInstance()->getListenerById(listenerId);
if (listener && !message->cancelled())
if (listener)
{
listener->handleMessageBase(message.get());
}
@@ -25,11 +25,6 @@ public:
return "MessageFinishedParsing";
}
virtual void dispatch()
{
Message<MessageFinishedParsing>::dispatch();
}
std::string getStatusStr() const
{
if (loadedOnly)