diff --git a/modules/gui/qt/qt.cpp b/modules/gui/qt/qt.cpp index 8acfbaa744a1b08c432431d854edd287541f80b2..0f2dc9cef6eebf9125ff4ee1f9529004d9537912 100644 --- a/modules/gui/qt/qt.cpp +++ b/modules/gui/qt/qt.cpp @@ -726,11 +726,14 @@ static void *Thread( void *obj ) /* All the settings are in the .conf/.ini style */ #ifdef _WIN32 char *cConfigDir = config_GetUserDir( VLC_CONFIG_DIR ); - QString configDir = cConfigDir; - free( cConfigDir ); - if( configDir.endsWith( "\\vlc" ) ) - configDir.chop( 4 ); /* the "\vlc" dir is added again by QSettings */ - QSettings::setPath( QSettings::IniFormat, QSettings::UserScope, configDir ); + if (likely(cConfigDir != nullptr)) + { + QString configDir = cConfigDir; + free( cConfigDir ); + if( configDir.endsWith( "\\vlc" ) ) + configDir.chop( 4 ); /* the "\vlc" dir is added again by QSettings */ + QSettings::setPath( QSettings::IniFormat, QSettings::UserScope, configDir ); + } #endif p_intf->mainSettings = new QSettings(