Age | Commit message (Collapse) | Author | Files | Lines |
|
Assume we we have a queue with 2 entries (A and B with triggerA() and triggerB()).
If triggerA() removes itself tevent_queue_entry_destructor() will be called
for A, this schedules the immediate event to call triggerB().
If triggerA() then also removes B by an explicit of implizit talloc_free(),
q->list is NULL, but the immediate event is still scheduled and can't be unscheduled.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 7fe5584e2a59584431cb2ddf8a4da22bfb924454)
|
|
This adds more flexible handling for the add operation:
- It allows the caller to remove a tevent_req from the queue
by calling talloc_free() on the returned tevent_queue_entry.
- It allows the caller to optimize for the empty queue case,
where it the caller wants to avoid the delay caused by
the immediate event.
metze
|
|
metze
|
|
This way the caller can add a blocker to the queue.
metze
|
|
metze
|
|
metze
|
|
metze
|