sway/main: Move wlc init to after args are handled.

First of all because it's not needed that early, and second of all
because there's a bug where calling `sway --get-socketpath` via `popen`
causes the child sway process to spin/hang instead of returning EOF.
(Specifically `(unset SWAYSOCK; swaymsg)` hangs.) This patch fixes that.

(Also note that this patch moves the "detailed review" comment, so I
guess this patch requires extra detailed review?)
This commit is contained in:
S. Christoffer Eliesen 2015-11-28 19:52:28 +01:00
parent 1661edee28
commit 20cb390323

View file

@ -64,21 +64,7 @@ int main(int argc, char **argv) {
{0, 0, 0, 0} {0, 0, 0, 0}
}; };
setenv("WLC_DIM", "0", 0);
wlc_log_set_handler(wlc_log_handler);
detect_nvidia();
/* Changing code earlier than this point requires detailed review */
if (!wlc_init(&interface, argc, argv)) {
return 1;
}
register_extensions();
char *config_path = NULL; char *config_path = NULL;
int c; int c;
while (1) { while (1) {
int option_index = 0; int option_index = 0;
@ -121,6 +107,18 @@ int main(int argc, char **argv) {
} }
} }
setenv("WLC_DIM", "0", 0);
wlc_log_set_handler(wlc_log_handler);
detect_nvidia();
/* Changing code earlier than this point requires detailed review */
/* (That code runs as root on systems without logind, and wlc_init drops to
* another user.) */
if (!wlc_init(&interface, argc, argv)) {
return 1;
}
register_extensions();
if (debug) { if (debug) {
init_log(L_DEBUG); init_log(L_DEBUG);
} else if (verbose || validate) { } else if (verbose || validate) {