From 7c468b5db6e2b437f0c1f216fb65f31c21920609 Mon Sep 17 00:00:00 2001 From: pajama-coder Date: Tue, 2 Jul 2024 09:51:23 +0800 Subject: [PATCH] [filter] acceptHTTPTunnel() should send back the response before starting its subpipeline --- src/filters/http.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/filters/http.cpp b/src/filters/http.cpp index 1bff5808..cd9c36dd 100644 --- a/src/filters/http.cpp +++ b/src/filters/http.cpp @@ -1822,10 +1822,12 @@ void TunnelServer::process(Event *evt) { pjs::Ref req_head = pjs::coerce(req->head()); pjs::Ref res_head = pjs::coerce(res->head()); if (res_head->is_tunnel_ok(req_head->tunnel_type())) { - m_pipeline = sub_pipeline(0, true, Filter::output())->start(); + m_pipeline = sub_pipeline(0, true, Filter::output()); } res->write(Filter::output()); + + if (m_pipeline) m_pipeline->start(); } }