diff options
Diffstat (limited to 'opensuse/tdebase/fix-kcontrol-yast.diff')
-rw-r--r-- | opensuse/tdebase/fix-kcontrol-yast.diff | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/opensuse/tdebase/fix-kcontrol-yast.diff b/opensuse/tdebase/fix-kcontrol-yast.diff deleted file mode 100644 index 5902d904d..000000000 --- a/opensuse/tdebase/fix-kcontrol-yast.diff +++ /dev/null @@ -1,63 +0,0 @@ -Index: kcontrol/kcontrol/modules.cpp -=================================================================== ---- kcontrol/kcontrol/modules.cpp.orig -+++ kcontrol/kcontrol/modules.cpp -@@ -19,6 +19,7 @@ - - #include <unistd.h> - #include <sys/types.h> -+#include <stdlib.h> - - - #include <qlabel.h> -@@ -59,6 +60,10 @@ ConfigModule::~ConfigModule() - - ProxyWidget *ConfigModule::module() - { -+ KDesktopFile kd(service()->desktopEntryPath()); -+ if ( !kd.readEntry("X-SuSE-YaST-Call").isEmpty() ) -+ setenv("KCMYAST2_CALL", kd.readEntry("X-SuSE-YaST-Call").latin1(), 1 ); -+ - if (_module) - return _module; - -@@ -168,6 +173,7 @@ void ConfigModule::runAsRoot() - // prepare the process to run the kcmshell - QString cmd = service()->exec().stripWhiteSpace(); - bool kdeshell = false; -+ bool proxy = false; - if (cmd.left(5) == "kdesu") - { - cmd = cmd.remove(0,5).stripWhiteSpace(); -@@ -185,6 +191,15 @@ void ConfigModule::runAsRoot() - kdeshell = true; - } - -+ KDesktopFile kd(service()->desktopEntryPath()); -+ if ( !kd.readEntry("X-SuSE-YaST-Call").isEmpty() ){ -+ kdeshell = true; -+ proxy = true; -+ cmd=service()->desktopEntryPath(); -+ -+ setenv("KCMYAST2_CALL", kd.readEntry("X-SuSE-YaST-Call").latin1(), 1 ); -+ } -+ - // run the process - QString kdesu = KStandardDirs::findExe("kdesu"); - if (!kdesu.isEmpty()) -@@ -196,12 +211,12 @@ void ConfigModule::runAsRoot() - // in that case the modules is started through kdesud and kdesu - // returns before the module is running and that doesn't work. - // We also don't have a way to close the module in that case. -- *_rootProcess << "--n"; // Don't keep password. -+ *_rootProcess << "--n" << "-t"; // Don't keep password. - if (kdeshell) { -- *_rootProcess << QString("%1 %2 --embed %3 --lang %4").arg(locate("exe", "kcmshell")).arg(cmd).arg(_embedWidget->winId()).arg(KGlobal::locale()->language()); -+ *_rootProcess << QString("%1 %2 %3 %4 --lang %5").arg(locate("exe", "kcmshell")).arg(cmd).arg(proxy?"--embed-proxy":"--embed").arg(_embedWidget->winId()).arg(KGlobal::locale()->language()); - } - else { -- *_rootProcess << QString("%1 --embed %2 --lang %3").arg(cmd).arg(_embedWidget->winId()).arg( KGlobal::locale()->language() ); -+ *_rootProcess << QString("%1 %2 %3 --lang %4").arg(cmd).arg(proxy?"--embed-proxy":"--embed").arg(_embedWidget->winId()).arg( KGlobal::locale()->language() ); - } - - connect(_rootProcess, SIGNAL(processExited(KProcess*)), this, SLOT(rootExited(KProcess*))); |