Skip to content

Commit f777e74

Browse files
yuwatakeszybz
authored andcommitted
udev: do not call sd_event_source_disable_unref() in workers for event sources created by the main process
Fixes a bug introduced by 9612da3.
1 parent 8166950 commit f777e74

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/udev/udevd.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -210,8 +210,10 @@ DEFINE_PRIVATE_HASH_OPS_WITH_VALUE_DESTRUCTOR(worker_hash_op, void, trivial_hash
210210
static void manager_clear_for_worker(Manager *manager) {
211211
assert(manager);
212212

213-
manager->inotify_event = sd_event_source_disable_unref(manager->inotify_event);
214-
manager->kill_workers_event = sd_event_source_disable_unref(manager->kill_workers_event);
213+
/* Do not use sd_event_source_disable_unref() here, as this is called by both workers and the
214+
* main process. */
215+
manager->inotify_event = sd_event_source_unref(manager->inotify_event);
216+
manager->kill_workers_event = sd_event_source_unref(manager->kill_workers_event);
215217

216218
manager->event = sd_event_unref(manager->event);
217219

0 commit comments

Comments
 (0)