diff --git a/src/finit.c b/src/finit.c index 7c23c4b6..bbd31938 100644 --- a/src/finit.c +++ b/src/finit.c @@ -334,19 +334,6 @@ int main(int argc, char* argv[]) if (getpid() != 1) return client(argc, argv); - /* Set up canvas */ - screen_init(); - - /* - * In case of emergency. - */ - emergency_shell(); - - /* - * Initial setup of signals, ignore all until we're up. - */ - sig_init(); - /* * Initalize event context. */ @@ -374,6 +361,20 @@ int main(int argc, char* argv[]) */ conf_parse_cmdline(); + /* Set up canvas */ + if (!rescue) + screen_init(); + + /* + * In case of emergency. + */ + emergency_shell(); + + /* + * Initial setup of signals, ignore all until we're up. + */ + sig_init(); + /* * Load plugins early, finit.conf may contain references to * features implemented by plugins.