From f9b46a1ba1f68aa2a04266cf3af230664cce4f9e Mon Sep 17 00:00:00 2001 From: Maria Matejka Date: Thu, 20 Jun 2024 12:09:38 +0200 Subject: [PATCH] Refeed done hooks are called in the same order as the requests came in --- nest/rt-export.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/nest/rt-export.c b/nest/rt-export.c index b991b9750..cc5cd353b 100644 --- a/nest/rt-export.c +++ b/nest/rt-export.c @@ -312,10 +312,20 @@ rt_export_next_feed(struct rt_export_feeder *f) return feed; /* Feeding done */ + struct rt_feeding_request *reverse = NULL; while (f->feeding) { struct rt_feeding_request *rfr = f->feeding; f->feeding = rfr->next; + rfr->next = reverse; + reverse = rfr; + } + + /* Call the done hook in the same order as requests came in */ + while (reverse) + { + struct rt_feeding_request *rfr = reverse; + reverse = rfr->next; CALL(rfr->done, rfr); } -- 2.47.2