From abf942f30300e6d46652c312f2b531dc3540b19a Mon Sep 17 00:00:00 2001 From: Berthold Stoeger Date: Mon, 10 Dec 2018 15:21:50 +0100 Subject: Cleanup: make DCDeviceData a "normal" singleton DCDeviceData was using that weird pattern where the instance variable was set in the constructor. There is no apparent reason to do so, therefore convert to a "normal" singleton. Access that directly in QMLManager instead of saving it in a member variable first. Signed-off-by: Berthold Stoeger --- core/downloadfromdcthread.cpp | 12 ++---------- core/downloadfromdcthread.h | 1 - 2 files changed, 2 insertions(+), 11 deletions(-) (limited to 'core') diff --git a/core/downloadfromdcthread.cpp b/core/downloadfromdcthread.cpp index 8e937346d..ec0705cc1 100644 --- a/core/downloadfromdcthread.cpp +++ b/core/downloadfromdcthread.cpp @@ -24,7 +24,6 @@ static QString str_error(const char *fmt, ...) return str; } - static void updateRememberedDCs() { QString current = qPrefDiveComputer::vendor() + " - " + qPrefDiveComputer::product() + " - " + qPrefDiveComputer::device(); @@ -254,7 +253,6 @@ void show_computer_list() qDebug() << msg; } } -DCDeviceData *DCDeviceData::m_instance = NULL; DCDeviceData::DCDeviceData() { @@ -276,18 +274,12 @@ DCDeviceData::DCDeviceData() #else data.libdc_log = false; #endif - if (m_instance) { - qDebug() << "already have an instance of DCDevieData"; - return; - } - m_instance = this; } DCDeviceData *DCDeviceData::instance() { - if (!m_instance) - m_instance = new DCDeviceData; - return m_instance; + static DCDeviceData self; + return &self; } QStringList DCDeviceData::getProductListFromVendor(const QString &vendor) diff --git a/core/downloadfromdcthread.h b/core/downloadfromdcthread.h index 3e2d7ddc0..1ae6a4087 100644 --- a/core/downloadfromdcthread.h +++ b/core/downloadfromdcthread.h @@ -51,7 +51,6 @@ public: void setSaveDump(bool dumpMode); void setSaveLog(bool saveLog); private: - static DCDeviceData *m_instance; device_data_t data; // Bluetooth name is managed outside of libdivecomputer -- cgit v1.2.3-70-g09d2