diff --git a/src/ProfileManager.cpp b/src/ProfileManager.cpp --- a/src/ProfileManager.cpp +++ b/src/ProfileManager.cpp @@ -35,6 +35,7 @@ #include #include #include +#include // Konsole #include "ProfileReader.h" @@ -327,8 +328,10 @@ QString newPath = writer->getPath(profile); - writer->writeProfile(newPath, profile); - + if (!writer->writeProfile(newPath, profile)) { + KMessageBox::sorry(0, + i18n("Konsole does not have permission to save this profile to %1", newPath)); + } delete writer; return newPath; diff --git a/src/ProfileWriter.cpp b/src/ProfileWriter.cpp --- a/src/ProfileWriter.cpp +++ b/src/ProfileWriter.cpp @@ -72,6 +72,10 @@ { KConfig config(path, KConfig::NoGlobals); + if (!config.isConfigWritable(false)) { + return false; + } + KConfigGroup general = config.group(GENERAL_GROUP); // Parent profile if set, when loading the profile in future, the parent