chiark / gitweb /
logind: fix delayed execution regression
[elogind.git] / src / login / logind.c
index 23fb55a9d4b232c224d82ce68efd0f6637e5eb5c..6db99fc5e69d14aa621a6a1d7d098b53b0cae50b 100644 (file)
 #include "conf-parser.h"
 #include "bus-util.h"
 #include "bus-error.h"
-#include "logind.h"
 #include "udev-util.h"
 #include "formats-util.h"
+#include "signal-util.h"
+#include "logind.h"
 
 static void manager_free(Manager *m);
 
@@ -1113,6 +1114,12 @@ static int manager_run(Manager *m) {
 
                 manager_gc(m, true);
 
+                r = manager_dispatch_delayed(m, false);
+                if (r < 0)
+                        return r;
+                if (r > 0)
+                        continue;
+
                 r = sd_event_run(m->event, (uint64_t) -1);
                 if (r < 0)
                         return r;