From 1d7408cc8b1a62966ab311e2fb2e6007b1a357fc Mon Sep 17 00:00:00 2001 From: Dyami Caliri Date: Fri, 22 Aug 2014 08:35:29 -0700 Subject: CoreWLan: terminate scan thread in QCoreWlanEngine destructor The scan thread can take an indeterminate amount of time, often longer than the 5 seconds we had previously waited. Since this destructor is only called when the application quits, it's ok that some resources may be lost. Task-number: QTBUG-36000 Change-Id: Ib184156b5a23c39ea4f7937a26ecb099554bd4de Reviewed-by: Peter Hartmann --- src/plugins/bearer/corewlan/qcorewlanengine.mm | 3 ++- src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/plugins/bearer/corewlan/qcorewlanengine.mm b/src/plugins/bearer/corewlan/qcorewlanengine.mm index 554ad26e51..65e70876f2 100644 --- a/src/plugins/bearer/corewlan/qcorewlanengine.mm +++ b/src/plugins/bearer/corewlan/qcorewlanengine.mm @@ -419,7 +419,8 @@ QCoreWlanEngine::QCoreWlanEngine(QObject *parent) QCoreWlanEngine::~QCoreWlanEngine() { - scanThread->wait(5000); + scanThread->terminate(); + scanThread->wait(); while (!foundConfigurations.isEmpty()) delete foundConfigurations.takeFirst(); diff --git a/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm b/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm index ba1cf33258..6cf614cb30 100644 --- a/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm +++ b/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm @@ -404,7 +404,8 @@ QCoreWlanEngine::QCoreWlanEngine(QObject *parent) QCoreWlanEngine::~QCoreWlanEngine() { - scanThread->wait(5000); + scanThread->terminate(); + scanThread->wait(); while (!foundConfigurations.isEmpty()) delete foundConfigurations.takeFirst(); -- cgit v1.2.3