refs #649, made base URL static const to resolve threading issue

(crash when shutting down)
This commit is contained in:
Klaus Basan
2016-06-04 14:47:25 +02:00
parent e752a3d73b
commit c31145b3a0
5 changed files with 13 additions and 9 deletions

View File

@@ -120,7 +120,7 @@ namespace BlackCore
protected: protected:
CDatabaseReaderConfigList m_config; //!< DB reder configuration CDatabaseReaderConfigList m_config; //!< DB reder configuration
BlackMisc::Network::CUrl m_sharedUrl; //!< URL for checking if alive BlackMisc::Network::CUrl m_sharedUrl; //!< URL for shared files
QString m_statusMessage; //!< Returned status message from watchdog QString m_statusMessage; //!< Returned status message from watchdog
bool m_canConnect = false; //!< Successful connection? bool m_canConnect = false; //!< Successful connection?
mutable QReadWriteLock m_statusLock; //!< Lock mutable QReadWriteLock m_statusLock; //!< Lock

View File

@@ -41,7 +41,8 @@ namespace BlackCore
CIcaoDataReader::CIcaoDataReader(QObject *owner, const CDatabaseReaderConfigList &confg) : CIcaoDataReader::CIcaoDataReader(QObject *owner, const CDatabaseReaderConfigList &confg) :
CDatabaseReader(owner, confg, "CIcaoDataReader") CDatabaseReader(owner, confg, "CIcaoDataReader")
{ {
// void // init to avoid threading issues
getBaseUrl();
} }
CAircraftIcaoCodeList CIcaoDataReader::getAircraftIcaoCodes() const CAircraftIcaoCodeList CIcaoDataReader::getAircraftIcaoCodes() const
@@ -209,9 +210,9 @@ namespace BlackCore
} }
} }
CUrl CIcaoDataReader::getBaseUrl() const const CUrl &CIcaoDataReader::getBaseUrl()
{ {
const CUrl baseUrl(sApp->getGlobalSetup().getDbIcaoReaderUrl()); static const CUrl baseUrl(sApp->getGlobalSetup().getDbIcaoReaderUrl());
return baseUrl; return baseUrl;
} }

View File

@@ -156,7 +156,8 @@ namespace BlackCore
void updateReaderUrl(const BlackMisc::Network::CUrl &url); void updateReaderUrl(const BlackMisc::Network::CUrl &url);
//! Base URL //! Base URL
BlackMisc::Network::CUrl getBaseUrl() const; //! \threadsafe
static const BlackMisc::Network::CUrl &getBaseUrl();
//! URL //! URL
BlackMisc::Network::CUrl getAircraftIcaoUrl(bool shared = false) const; BlackMisc::Network::CUrl getAircraftIcaoUrl(bool shared = false) const;

View File

@@ -41,7 +41,8 @@ namespace BlackCore
CModelDataReader::CModelDataReader(QObject *owner, const CDatabaseReaderConfigList &config) : CModelDataReader::CModelDataReader(QObject *owner, const CDatabaseReaderConfigList &config) :
CDatabaseReader(owner, config, "CModelDataReader") CDatabaseReader(owner, config, "CModelDataReader")
{ {
// void // init to avoid threading issues
getBaseUrl();
} }
CLiveryList CModelDataReader::getLiveries() const CLiveryList CModelDataReader::getLiveries() const
@@ -463,9 +464,9 @@ namespace BlackCore
return CDatabaseReader::isChangedUrl(CUrl(), this->getBaseUrl()); return CDatabaseReader::isChangedUrl(CUrl(), this->getBaseUrl());
} }
CUrl CModelDataReader::getBaseUrl() const const CUrl &CModelDataReader::getBaseUrl()
{ {
const CUrl baseUrl(sApp->getGlobalSetup().getDbModelReaderUrl()); static const CUrl baseUrl(sApp->getGlobalSetup().getDbModelReaderUrl());
return baseUrl; return baseUrl;
} }

View File

@@ -159,7 +159,8 @@ namespace BlackCore
mutable QReadWriteLock m_lockModels; mutable QReadWriteLock m_lockModels;
//! Base URL //! Base URL
BlackMisc::Network::CUrl getBaseUrl() const; //! \threadsafe
static const BlackMisc::Network::CUrl &getBaseUrl();
//! URL livery web service //! URL livery web service
BlackMisc::Network::CUrl getLiveryUrl(bool shared = false) const; BlackMisc::Network::CUrl getLiveryUrl(bool shared = false) const;