diff options
author | Vyacheslav Koscheev <vok1980@gmail.com> | 2016-11-14 15:28:31 +0700 |
---|---|---|
committer | Vyacheslav Koscheev <vok1980@gmail.com> | 2017-02-07 08:41:11 +0000 |
commit | d9d36100d170ee7cdb04e2782d75e06118934def (patch) | |
tree | 31bedc5335c6540145fdec671d0f77dc456a2114 | |
parent | 4106efd630f1ac4ee90e754a3e3e86fd239f8e99 (diff) | |
download | qtlocation-d9d36100d170ee7cdb04e2782d75e06118934def.tar.gz |
Set parent to timers in position plugins
QTimer can be started and stoped only from owner thread.
So, if we'll do moveToThread for parent object,
then we need QTimer to have a parent to change its owner thread too.
Change-Id: Iac57d42b6e72118f31d93f15662403f681925f88
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
4 files changed, 4 insertions, 4 deletions
diff --git a/src/plugins/position/android/src/qgeopositioninfosource_android.cpp b/src/plugins/position/android/src/qgeopositioninfosource_android.cpp index 2c30196e..adb9003d 100644 --- a/src/plugins/position/android/src/qgeopositioninfosource_android.cpp +++ b/src/plugins/position/android/src/qgeopositioninfosource_android.cpp @@ -47,7 +47,7 @@ Q_DECLARE_METATYPE(QGeoPositionInfo) QGeoPositionInfoSourceAndroid::QGeoPositionInfoSourceAndroid(QObject *parent) : - QGeoPositionInfoSource(parent), updatesRunning(false), m_error(NoError) + QGeoPositionInfoSource(parent), updatesRunning(false), m_error(NoError), m_requestTimer(this) { qRegisterMetaType< QGeoPositionInfo >(); androidClassKeyForUpdate = AndroidPositioning::registerPositionInfoSource(this); diff --git a/src/plugins/position/geoclue/qgeopositioninfosource_geocluemaster.cpp b/src/plugins/position/geoclue/qgeopositioninfosource_geocluemaster.cpp index 1fba2e94..ccd630e2 100644 --- a/src/plugins/position/geoclue/qgeopositioninfosource_geocluemaster.cpp +++ b/src/plugins/position/geoclue/qgeopositioninfosource_geocluemaster.cpp @@ -79,7 +79,7 @@ QGeoPositionInfoSourceGeoclueMaster::QGeoPositionInfoSourceGeoclueMaster(QObject : QGeoPositionInfoSource(parent), m_master(new QGeoclueMaster(this)), m_provider(0), m_pos(0), m_vel(0), m_lastVelocityIsFresh(false), m_regularUpdateTimedOut(false), m_lastVelocity(qQNaN()), m_lastDirection(qQNaN()), m_lastClimb(qQNaN()), m_lastPositionFromSatellite(false), - m_running(false), m_error(NoError) + m_running(false), m_error(NoError), m_requestTimer(this) { qDBusRegisterMetaType<Accuracy>(); diff --git a/src/plugins/position/geoclue/qgeosatelliteinfosource_geocluemaster.cpp b/src/plugins/position/geoclue/qgeosatelliteinfosource_geocluemaster.cpp index 3d70ea37..35b728fe 100644 --- a/src/plugins/position/geoclue/qgeosatelliteinfosource_geocluemaster.cpp +++ b/src/plugins/position/geoclue/qgeosatelliteinfosource_geocluemaster.cpp @@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE QGeoSatelliteInfoSourceGeoclueMaster::QGeoSatelliteInfoSourceGeoclueMaster(QObject *parent) : QGeoSatelliteInfoSource(parent), m_master(new QGeoclueMaster(this)), m_provider(0), m_sat(0), - m_error(NoError), m_satellitesChangedConnected(false), m_running(false) + m_error(NoError), m_satellitesChangedConnected(false), m_running(false), m_requestTimer(this) { connect(m_master, SIGNAL(positionProviderChanged(QString,QString,QString,QString)), this, SLOT(positionProviderChanged(QString,QString,QString,QString))); diff --git a/src/plugins/position/gypsy/qgeosatelliteinfosource_gypsy.cpp b/src/plugins/position/gypsy/qgeosatelliteinfosource_gypsy.cpp index 4e78265f..6b38ec83 100644 --- a/src/plugins/position/gypsy/qgeosatelliteinfosource_gypsy.cpp +++ b/src/plugins/position/gypsy/qgeosatelliteinfosource_gypsy.cpp @@ -141,7 +141,7 @@ gchar *SatelliteGypsyEngine::eng_gconf_client_get_string(GConfClient *client, co } QGeoSatelliteInfoSourceGypsy::QGeoSatelliteInfoSourceGypsy(QObject *parent) : QGeoSatelliteInfoSource(parent), - m_engine(0), m_satellite(0), m_device(0), m_updatesOngoing(false), m_requestOngoing(false) + m_engine(0), m_satellite(0), m_device(0), m_updatesOngoing(false), m_requestOngoing(false), m_requestTimer(this) { m_requestTimer.setSingleShot(true); QObject::connect(&m_requestTimer, SIGNAL(timeout()), this, SLOT(requestUpdateTimeout())); |