@MortenMacFly (and others of course):
can you test this patch ?
It works on linux, if C::B is build by C::B and default.conf is in the exe-folder.
The problem is that the user- and global-datapath are the same in this case.
The patch avoids this by adding the user-id (login-name) to the user-datapath.
Index: src/sdk/configmanager.cpp
===================================================================
--- src/sdk/configmanager.cpp
+++ src/sdk/configmanager.cpp
@@ -25,6 +25,7 @@
#include <wx/url.h>
#include <wx/stream.h>
#include <wx/stdpaths.h>
+#include <wx/filename.h>
#ifdef __WXMSW__
#include <shlobj.h>
@@ -1529,6 +1530,11 @@
ConfigManager::data_path_user = dataPathUser + wxFILE_SEP_PATH + _T("codeblocks");
+ // if user- and global-datapath are the same (can happen in portable mode) we run in conflicts
+ // so we extend the user-datapath with the users name
+ if (wxFileName(ConfigManager::data_path_user) == wxFileName(ConfigManager::data_path_global))
+ ConfigManager::data_path_user.append(_(".")+wxGetUserId());
+
CreateDirRecursively(ConfigManager::config_folder);
CreateDirRecursively(ConfigManager::data_path_user + _T("/plugins/"));
CreateDir(ConfigManager::data_path_user + _T("/scripts/"));