chiark / gitweb /
core: set some event source priorities to enforce dispatching order
[elogind.git] / src / core / manager.c
index c424fece52f385170264f3eae032c58fc1d3de17..ba4dab3b86c919e8f79691c543beb3036a082c59 100644 (file)
@@ -368,6 +368,11 @@ static int manager_setup_signals(Manager *m) {
         if (r < 0)
                 return r;
 
+        /* Process signals a bit earlier than the rest of things */
+        r = sd_event_source_set_priority(m->signal_event_source, -5);
+        if (r < 0)
+                return r;
+
         if (m->running_as == SYSTEMD_SYSTEM)
                 return enable_special_signals(m);