mirror of
https://github.com/leahneukirchen/cwm.git
synced 2023-08-10 21:13:12 +03:00
If the replacement window manager fails to start, restart the fallback (the
original invocation of cwm).
This commit is contained in:
commit
15ca9c03ba
5
calmwm.c
5
calmwm.c
@ -56,6 +56,7 @@ main(int argc, char **argv)
|
||||
{
|
||||
const char *conf_file = NULL;
|
||||
char *conf_path, *display_name = NULL;
|
||||
char *fallback;
|
||||
int ch, xfd;
|
||||
struct pollfd pfd[1];
|
||||
struct passwd *pw;
|
||||
@ -64,6 +65,7 @@ main(int argc, char **argv)
|
||||
warnx("no locale support");
|
||||
mbtowc(NULL, NULL, MB_CUR_MAX);
|
||||
|
||||
fallback = u_argv(argv);
|
||||
Conf.wm_argv = u_argv(argv);
|
||||
while ((ch = getopt(argc, argv, "c:d:")) != -1) {
|
||||
switch (ch) {
|
||||
@ -132,6 +134,9 @@ main(int argc, char **argv)
|
||||
if (cwm_status == CWM_EXEC_WM)
|
||||
u_exec(Conf.wm_argv);
|
||||
|
||||
warnx("'%s' failed to start, restarting fallback", Conf.wm_argv);
|
||||
u_exec(fallback);
|
||||
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user