]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - src/udev/udevd.c
udevd: event - fix event queue in daemenozied mode
[thirdparty/systemd.git] / src / udev / udevd.c
index 4a44b031438f180a9c8a72088d00a3c53767a75d..b33a262ffc1f68f0bc7a4240a82187cbdee47912 100644 (file)
@@ -564,7 +564,10 @@ static int event_queue_insert(Manager *manager, struct udev_device *dev) {
         assert(manager);
         assert(dev);
 
-        /* only the main process can add events to the queue */
+        /* only one process can add events to the queue */
+        if (manager->pid == 0)
+                manager->pid = getpid();
+
         assert(manager->pid == getpid());
 
         event = new0(struct event, 1);
@@ -1300,8 +1303,6 @@ static int manager_new(Manager **ret) {
         if (!manager)
                 return log_oom();
 
-        manager->pid = getpid();
-
         manager->fd_ep = -1;
         manager->fd_ctrl = -1;
         manager->fd_uevent = -1;