On Thu, 06.11.14 19:47, Michael Chapman (m...@very.puzzling.org) wrote: Makes sense! Applied!
> A timer configured with OnActiveSec will start its associated unit again > if the timer is stopped, then started. However, if the timer unit is > restarted -- with "systemctl restart", say -- this does not occur. > > This commit ensures that TIMER_ACTIVE timers are re-enabled whenever the > timer is started, even if that's within a restart job. > --- > src/core/timer.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/src/core/timer.c b/src/core/timer.c > index a3713e2..5c4e9f9 100644 > --- a/src/core/timer.c > +++ b/src/core/timer.c > @@ -521,6 +521,7 @@ fail: > > static int timer_start(Unit *u) { > Timer *t = TIMER(u); > + TimerValue *v; > > assert(t); > assert(t->state == TIMER_DEAD || t->state == TIMER_FAILED); > @@ -530,6 +531,11 @@ static int timer_start(Unit *u) { > > t->last_trigger = DUAL_TIMESTAMP_NULL; > > + /* Reenable all timers that depend on unit activation time */ > + LIST_FOREACH(value, v, t->values) > + if (v->base == TIMER_ACTIVE) > + v->disabled = false; > + > if (t->stamp_path) { > struct stat st; > > -- > 2.1.0 > > _______________________________________________ > systemd-devel mailing list > systemd-devel@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/systemd-devel Lennart -- Lennart Poettering, Red Hat _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel