aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--swaybar/bar.c9
-rw-r--r--swaybar/status_line.c3
2 files changed, 8 insertions, 4 deletions
diff --git a/swaybar/bar.c b/swaybar/bar.c
index f4dd4405..231c1ad7 100644
--- a/swaybar/bar.c
+++ b/swaybar/bar.c
@@ -413,10 +413,6 @@ bool bar_setup(struct swaybar *bar, const char *socket_path) {
413 if (!ipc_initialize(bar)) { 413 if (!ipc_initialize(bar)) {
414 return false; 414 return false;
415 } 415 }
416 if (bar->config->status_command) {
417 bar->status = status_line_init(bar->config->status_command);
418 bar->status->bar = bar;
419 }
420 416
421 bar->display = wl_display_connect(NULL); 417 bar->display = wl_display_connect(NULL);
422 if (!bar->display) { 418 if (!bar->display) {
@@ -445,6 +441,11 @@ bool bar_setup(struct swaybar *bar, const char *socket_path) {
445 assert(pointer->cursor_surface); 441 assert(pointer->cursor_surface);
446 } 442 }
447 443
444 if (bar->config->status_command) {
445 bar->status = status_line_init(bar->config->status_command);
446 bar->status->bar = bar;
447 }
448
448#if HAVE_TRAY 449#if HAVE_TRAY
449 if (!bar->config->tray_hidden) { 450 if (!bar->config->tray_hidden) {
450 bar->tray = create_tray(bar); 451 bar->tray = create_tray(bar);
diff --git a/swaybar/status_line.c b/swaybar/status_line.c
index fb9271f8..71ceb1d0 100644
--- a/swaybar/status_line.c
+++ b/swaybar/status_line.c
@@ -1,4 +1,5 @@
1#define _POSIX_C_SOURCE 200809L 1#define _POSIX_C_SOURCE 200809L
2#include <assert.h>
2#include <fcntl.h> 3#include <fcntl.h>
3#include <sys/ioctl.h> 4#include <sys/ioctl.h>
4#include <json.h> 5#include <json.h>
@@ -153,6 +154,8 @@ struct status_line *status_line_init(char *cmd) {
153 exit(1); 154 exit(1);
154 } 155 }
155 156
157 assert(!getenv("WAYLAND_SOCKET") && "display must be initialized before "
158 " starting `status-command`; WAYLAND_SOCKET should not be set");
156 status->pid = fork(); 159 status->pid = fork();
157 if (status->pid == 0) { 160 if (status->pid == 0) {
158 dup2(pipe_read_fd[1], STDOUT_FILENO); 161 dup2(pipe_read_fd[1], STDOUT_FILENO);