From 33016a1dc9e6f455d8a95ec36d143f0dec621a7c Mon Sep 17 00:00:00 2001 From: Vlad Paiu Date: Fri, 18 Jul 2025 15:26:20 +0300 Subject: [PATCH] when deciding if we need to propagate a reply, skip branches scheduled for cancellation but with no replies yet --- modules/tm/t_reply.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/tm/t_reply.c b/modules/tm/t_reply.c index 67fc35230f6..2bbf4a047ca 100644 --- a/modules/tm/t_reply.c +++ b/modules/tm/t_reply.c @@ -833,6 +833,11 @@ static inline int t_pick_branch( struct cell *t, int *res_code, int *do_cancel) continue; /* skip 'empty branches' */ if (!t->uac[b].request.buffer.s) continue; + + /* skip branches with no replies yet, but which were marked to + * be cancelled via t_cancel_branch */ + if (t->uac[b].flags & T_UAC_TO_CANCEL_FLAG) continue; + /* there is still an unfinished UAC transaction; wait now! */ if ( t->uac[b].last_received<200 ) { if (t->uac[b].br_flags & minor_branch_flag) {