Make sure to cleanup expectations for a flow as the first step, before
parts of the flow itself are getting cleaned/freed.
Also indicate use unlikely as flows with expectations should be relatively
rare.
(cherry picked from commit
09a21545ce00de8ef161f097603f98770351e9be)
{
SCEnter();
+ if (unlikely(f->flags & FLOW_HAS_EXPECTATION)) {
+ AppLayerExpectationClean(f);
+ }
+
/* call the protocol specific free function if we have one */
if (flow_freefuncs[proto_map].Freefunc != NULL) {
flow_freefuncs[proto_map].Freefunc(f->protoctx);