Skip to content

Commit 7182b1b

Browse files
committed
Properly deal with empty cache/directory in WFS provider, server and globe plugin
Fixes #15111
1 parent 1ebd5a4 commit 7182b1b

File tree

3 files changed

+9
-3
lines changed

3 files changed

+9
-3
lines changed

src/plugins/globe/globe_plugin.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,9 @@ void GlobePlugin::run()
342342
}
343343
else
344344
{
345-
QString cacheDirectory = settings.value( "cache/directory", QgsApplication::qgisSettingsDirPath() + "cache" ).toString();
345+
QString cacheDirectory = settings.value( "cache/directory" ).toString();
346+
if ( cacheDirectory.isEmpty() )
347+
cacheDirectory = QgsApplication::qgisSettingsDirPath() + "cache";
346348
osgEarth::Drivers::FileSystemCacheOptions cacheOptions;
347349
cacheOptions.rootPath() = cacheDirectory.toStdString();
348350

src/providers/wfs/qgswfsutils.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,9 @@ int QgsWFSUtils::gmCounter = 0;
3737
QString QgsWFSUtils::getBaseCacheDirectory( bool createIfNotExisting )
3838
{
3939
QSettings settings;
40-
QString cacheDirectory = settings.value( "cache/directory", QgsApplication::qgisSettingsDirPath() + "cache" ).toString();
40+
QString cacheDirectory = settings.value( "cache/directory" ).toString();
41+
if ( cacheDirectory.isEmpty() )
42+
cacheDirectory = QgsApplication::qgisSettingsDirPath() + "cache";
4143
if ( createIfNotExisting )
4244
{
4345
QMutexLocker locker( &gmMutex );

src/server/qgsserver.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,9 @@ void QgsServer::setupNetworkAccessManager()
112112
QSettings settings;
113113
QgsNetworkAccessManager *nam = QgsNetworkAccessManager::instance();
114114
QNetworkDiskCache *cache = new QNetworkDiskCache( nullptr );
115-
QString cacheDirectory = settings.value( "cache/directory", QgsApplication::qgisSettingsDirPath() + "cache" ).toString();
115+
QString cacheDirectory = settings.value( "cache/directory" ).toString();
116+
if ( cacheDirectory.isEmpty() )
117+
cacheDirectory = QgsApplication::qgisSettingsDirPath() + "cache";
116118
qint64 cacheSize = settings.value( "cache/size", 50 * 1024 * 1024 ).toULongLong();
117119
QgsMessageLog::logMessage( QString( "setCacheDirectory: %1" ).arg( cacheDirectory ), "Server", QgsMessageLog::INFO );
118120
QgsMessageLog::logMessage( QString( "setMaximumCacheSize: %1" ).arg( cacheSize ), "Server", QgsMessageLog::INFO );

0 commit comments

Comments
 (0)