From: Tom Gundersen Date: Fri, 15 Aug 2014 16:21:18 +0000 (+0200) Subject: sd-event: fix missing needs_rearm X-Git-Tag: v216~61^2~14 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=e07bbb7c503dca966b307e7af21e2efbc6f45b89;hp=def9a7aa0182e5ecca3ac61b26f75136a5c4f103 sd-event: fix missing needs_rearm --- diff --git a/src/libsystemd/sd-event/sd-event.c b/src/libsystemd/sd-event/sd-event.c index 1e3afaeac..3a9d934aa 100644 --- a/src/libsystemd/sd-event/sd-event.c +++ b/src/libsystemd/sd-event/sd-event.c @@ -894,6 +894,8 @@ _public_ int sd_event_add_time( s->userdata = userdata; s->enabled = SD_EVENT_ONESHOT; + d->needs_rearm = true; + r = prioq_put(d->earliest, s, &s->time.earliest_index); if (r < 0) goto fail; @@ -902,8 +904,6 @@ _public_ int sd_event_add_time( if (r < 0) goto fail; - d->needs_rearm = true; - if (ret) *ret = s; @@ -1872,6 +1872,7 @@ static int process_timer( prioq_reshuffle(d->earliest, s, &s->time.earliest_index); prioq_reshuffle(d->latest, s, &s->time.latest_index); + d->needs_rearm = true; } return 0;