Fix crash on exit and cleanly quit thread

merge-requests/1/head
Phil Taylor 2021-02-07 09:50:44 +00:00
rodzic 46b53f0f68
commit ab6192428f
1 zmienionych plików z 2 dodań i 9 usunięć

Wyświetl plik

@ -361,16 +361,8 @@ wfmain::wfmain(const QString serialPortCL, const QString hostCL, QWidget *parent
wfmain::~wfmain()
{
#ifdef Q_OS_WIN // Prevent crash on exit in Windows.
delete rig;
rigThread->quit();
rigThread->wait();
#endif
#ifdef Q_OS_LINUX
delete rig;
rigThread->quit();
rigThread->wait();
#endif
delete ui;
}
@ -471,7 +463,8 @@ void wfmain::openRig()
rig->moveToThread(rigThread);
connect(rigThread, SIGNAL(started()), rig, SLOT(process()));
connect(rig, SIGNAL(finished()), rigThread, SLOT(quit()));
connect(rigThread, SIGNAL(finished()), rig, SLOT(deleteLater()));
connect(rig, SIGNAL(haveSerialPortError(QString, QString)), this, SLOT(receiveSerialPortError(QString, QString)));
connect(rig, SIGNAL(haveStatusUpdate(QString)), this, SLOT(receiveStatusUpdate(QString)));
rigThread->start();