MINOR: streams: Call tasklet_free() after si_release_endpoint().

Make sure we call tasklet_free() only after si_release_endpoint(), when the
unsubscribe() method has been called, so that we're sure the mux won't
attempt to access the taslet.
This commit is contained in:
Olivier Houchard 2018-10-18 16:22:02 +02:00 committed by Willy Tarreau
parent 53216e7db9
commit d7bd3e3c4c

View File

@ -398,12 +398,13 @@ static void stream_free(struct stream *s)
/* applets do not release session yet */
must_free_sess = objt_appctx(sess->origin) && sess->origin == s->si[0].end;
tasklet_free(s->si[0].wait_event.task);
tasklet_free(s->si[1].wait_event.task);
si_release_endpoint(&s->si[1]);
si_release_endpoint(&s->si[0]);
tasklet_free(s->si[0].wait_event.task);
tasklet_free(s->si[1].wait_event.task);
if (must_free_sess)
session_free(sess);