]> git.sur5r.net Git - i3/i3status/blobdiff - i3status.c
make SIGUSR1 do nothing, so that killall -USR1 i3status will force an update
[i3/i3status] / i3status.c
index 503f76382b9103ecea50ff9663e0bdb80385f6fb..87a793b346e034bd22b08d29bc6d7cc6d98a7392 100644 (file)
@@ -57,6 +57,14 @@ void sigpipe(int signum) {
         exit(1);
 }
 
+/*
+ * Do nothing upon SIGUSR1. Running this signal handler will nevertheless
+ * interrupt nanosleep() so that i3status immediately generates new output.
+ *
+ */
+void sigusr1(int signum) {
+}
+
 /*
  * Checks if the given path exists by calling stat().
  *
@@ -305,6 +313,10 @@ int main(int argc, char *argv[]) {
         action.sa_handler = sigpipe;
         sigaction(SIGPIPE, &action, NULL);
 
+        memset(&action, 0, sizeof(struct sigaction));
+        action.sa_handler = sigusr1;
+        sigaction(SIGUSR1, &action, NULL);
+
         if (setlocale(LC_ALL, "") == NULL)
                 die("Could not set locale. Please make sure all your LC_* / LANG settings are correct.");