Browse Source

Fix possible crash when using the new "Auto-shutdown" feature

adaptive-webui-19844
Christophe Dumez 14 years ago
parent
commit
e323175275
  1. 4
      src/GUI.cpp
  2. 8
      src/bittorrent.cpp
  3. 2
      src/main.cpp

4
src/GUI.cpp

@ -286,10 +286,8 @@ GUI::~GUI() { @@ -286,10 +286,8 @@ GUI::~GUI() {
delete switchTransferShortcut;
delete switchRSSShortcut;
// Delete BTSession objects
qDebug("Deleting BTSession");
delete BTSession;
// Deleting remaining top level widgets
qDebug("Deleting remaining top level widgets");
// May freeze for a few seconds after the next line
// because the Bittorrent session proxy will
// actually be deleted now and destruction

8
src/bittorrent.cpp

@ -2049,12 +2049,16 @@ void Bittorrent::addConsoleMessage(QString msg, QString) { @@ -2049,12 +2049,16 @@ void Bittorrent::addConsoleMessage(QString msg, QString) {
#if LIBTORRENT_VERSION_MINOR < 15
saveDHTEntry();
#endif
qDebug("Saving session state");
saveSessionState();
qDebug("Saving fast resume data");
saveFastResumeData();
qDebug("Deleting the session");
delete s;
qDebug("Sending computer shutdown signal");
misc::shutdownComputer();
exiting = true;
qApp->exit();
qDebug("Exiting the application");
exit(0);
}
}
}

2
src/main.cpp

@ -308,7 +308,7 @@ int main(int argc, char *argv[]){ @@ -308,7 +308,7 @@ int main(int argc, char *argv[]){
#endif
int ret = app.exec();
qDebug("Application has exited");
return ret;
}

Loading…
Cancel
Save