Группа :: Графические оболочки/Icewm
Пакет: icewm
Главная Изменения Спек Патчи Загрузить Bugs and FR
Патч: icewm-1.2.23-reboot.patch
--- icewm-1.2.23/src/wmdialog.cc 2005-08-14 22:33:08 +0400
+++ icewm-1.2.23.reboot/src/wmdialog.cc 2005-11-10 12:24:07 +0300
@@ -51,6 +51,7 @@
}
bool canShutdown(bool reboot) {
+ char *copy;
if (!reboot)
if (shutdownCommand == 0 || shutdownCommand[0] == 0)
return false;
@@ -59,6 +60,22 @@
return false;
if (logoutCommand && logoutCommand[0])
return false;
+ if (reboot)
+ copy = strdup(rebootCommand);
+ else
+ copy = strdup(shutdownCommand);
+
+ char *term = strchr(copy, ' ');
+ if (term)
+ *term = 0x0;
+ term = strchr(copy, '\t');
+ if (term)
+ *term = 0x0;
+ char *whereis = findPath(getenv("PATH"), X_OK, copy);
+ if (whereis == 0) {
+ free(copy);
+ return false;
+ }
#ifdef CONFIG_SESSION
if (smapp->haveSessionManager())
return false;