From eb23ef1747d1a6bd4f9089c874c4acc5453cfac0 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Thu, 9 Jan 2014 20:55:43 +0100 Subject: event/Loop: allow AddTimer() after Run() has returned Kludge for libavahi-client quirk. --- src/event/Loop.cxx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/event/Loop.cxx b/src/event/Loop.cxx index 8cd4cde72..9c76c422c 100644 --- a/src/event/Loop.cxx +++ b/src/event/Loop.cxx @@ -100,7 +100,9 @@ EventLoop::RemoveIdle(IdleMonitor &i) void EventLoop::AddTimer(TimeoutMonitor &t, unsigned ms) { - assert(IsInsideOrVirgin()); + /* can't use IsInsideOrVirgin() here because libavahi-client + modifies the timeout during avahi_client_free() */ + assert(IsInsideOrNull()); timers.insert(TimerRecord(t, now_ms + ms)); again = true; -- cgit v1.2.3