From 84d18f70f3400df3e9c3b3c47288e82cd9160f6e Mon Sep 17 00:00:00 2001 From: David Goulet Date: Thu, 14 Sep 2017 13:29:05 -0400 Subject: sched: Always call on_channel_free() regardless of state A channel can bounce in the scheduler and bounce out with the IDLE state which means that if it came in the scheduler once, it has socket information that needs to be freed from the global hash table. Signed-off-by: David Goulet --- src/or/scheduler.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/or/scheduler.c b/src/or/scheduler.c index aaf991407a..39427b7827 100644 --- a/src/or/scheduler.c +++ b/src/or/scheduler.c @@ -547,11 +547,11 @@ scheduler_release_channel,(channel_t *chan)) offsetof(channel_t, sched_heap_idx), chan); } - if (the_scheduler->on_channel_free) { - the_scheduler->on_channel_free(chan); - } } + if (the_scheduler->on_channel_free) { + the_scheduler->on_channel_free(chan); + } chan->scheduler_state = SCHED_CHAN_IDLE; } -- cgit v1.2.3-54-g00ecf