@@ -48,14 +48,6 @@ static void initLocale(QTranslator *qtTranslator, QTranslator *translator)
4848
4949void  initConfig (std::string &configFile)
5050{
51-     //  mkdir -p
52-     if  (!std::filesystem::exists (configFile)) {
53-         size_t  filenamePosition = configFile.find_last_of (" /" 
54-         std::string dirname = configFile.substr (0 , filenamePosition);
55-         info (" Creating directory '{}'" 
56-         std::filesystem::create_directories (dirname);
57-     }
58- 
5951    bool  success = xml_init (configFile.data ());
6052
6153    if  (!success) {
@@ -68,6 +60,14 @@ void initConfig(std::string &configFile)
6860    }
6961}
7062
63+ void  mkdir_p (std::string path)
64+ {
65+     if  (!std::filesystem::exists (path)) {
66+         info (" Creating directory '{}'" 
67+         std::filesystem::create_directories (path);
68+     }
69+ }
70+ 
7171int  main (int  argc, char  *argv[])
7272{
7373    QApplication app (argc, argv);
@@ -79,7 +79,7 @@ int main(int argc, char *argv[])
7979    std::string config_home = std::getenv (" HOME" std::string (" /.config/labwc" 
8080    std::string config_dir = std::getenv (" LABWC_CONFIG_DIR" 
8181
82-     //  TODO: do the mkdir -p here 
82+     mkdir_p (config_dir); 
8383
8484    std::string environment_file = config_dir + " /environment" 
8585    environmentInit (environment_file);
0 commit comments