diff options
author | Lennart Poettering <lennart@poettering.net> | 2013-04-23 15:53:16 -0300 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2013-04-23 16:00:32 -0300 |
commit | 3ecaa09bccd8a59c9f1e06756a1334a162206dc4 (patch) | |
tree | 5db15dc8f6fe6ea17e0d2449b8fee015b6066f47 /src/core/dbus-path.c | |
parent | a34cb32e54ed51125957f69622efef30f42d5fae (diff) |
unit: rework trigger dependency logic
Instead of having explicit type-specific callbacks that inform the
triggering unit when a triggered unit changes state, make this generic
so that state changes are forwarded betwee any triggered and triggering
unit.
Also, get rid of UnitRef references from automount, timer, path units,
to the units they trigger and rely exclsuively on UNIT_TRIGGER type
dendencies.
Diffstat (limited to 'src/core/dbus-path.c')
-rw-r--r-- | src/core/dbus-path.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/core/dbus-path.c b/src/core/dbus-path.c index f7fed1754d..1e62083d9b 100644 --- a/src/core/dbus-path.c +++ b/src/core/dbus-path.c @@ -84,15 +84,15 @@ static int bus_path_append_paths(DBusMessageIter *i, const char *property, void } static int bus_path_append_unit(DBusMessageIter *i, const char *property, void *data) { - Unit *u = data; - Path *p = PATH(u); + Unit *u = data, *trigger; const char *t; assert(i); assert(property); assert(u); - t = UNIT_DEREF(p->unit) ? UNIT_DEREF(p->unit)->id : ""; + trigger = UNIT_TRIGGER(u); + t = trigger ? trigger->id : ""; return dbus_message_iter_append_basic(i, DBUS_TYPE_STRING, &t) ? 0 : -ENOMEM; } |