diff --git a/src/quic_entry.cpp b/src/quic_entry.cpp index 9fee0d1..0c26e7e 100644 --- a/src/quic_entry.cpp +++ b/src/quic_entry.cpp @@ -177,8 +177,12 @@ extern "C" unsigned char QUIC_ENTRY(const struct streaminfo *pstream, void**pme, state=quic_analyze_entry(pstream, context, thread_seq, a_packet); if(state&APP_STATE_DROPME || pstream->opstate==OP_STATE_CLOSE) - { - quic_call_business_plug(pstream, context, NULL, 0, QUIC_INTEREST_KEY_MASK, a_packet); + { + if(context->link_state==1) + { + quic_call_business_plug(pstream, context, NULL, 0, QUIC_INTEREST_KEY_MASK, a_packet); + } + quic_free_context(pstream, g_quic_param.context_bridge_id, *pme); stream_bridge_async_data_put(pstream, g_quic_param.context_bridge_id, NULL); *pme=NULL;