diff --git a/src/qtlibtorrent/filterparserthread.h b/src/qtlibtorrent/filterparserthread.h index 4fee9971c..08a46cfd6 100644 --- a/src/qtlibtorrent/filterparserthread.h +++ b/src/qtlibtorrent/filterparserthread.h @@ -407,6 +407,8 @@ protected: ruleCount = parseDATFilterFile(filePath); } } + if(abort) + return; try { s->set_ip_filter(filter); emit IPFilterParsed(ruleCount); diff --git a/src/qtlibtorrent/qbtsession.cpp b/src/qtlibtorrent/qbtsession.cpp index ca385fe86..d034a8d40 100644 --- a/src/qtlibtorrent/qbtsession.cpp +++ b/src/qtlibtorrent/qbtsession.cpp @@ -161,9 +161,6 @@ QBtSession::~QBtSession() { #endif saveSessionState(); saveFastResumeData(); - qDebug("Deleting the session"); - delete s; - qDebug("Session deleted"); // Delete our objects if(m_tracker) delete m_tracker; @@ -178,6 +175,8 @@ QBtSession::~QBtSession() { // HTTP Server if(httpServer) delete httpServer; + qDebug("Deleting the session"); + delete s; qDebug("BTSession destructor OUT"); }