summaryrefslogtreecommitdiff
path: root/plugin/protocol/http/src
diff options
context:
space:
mode:
authorzhengchao <[email protected]>2018-11-20 15:56:13 +0800
committerzhengchao <[email protected]>2018-11-20 16:46:15 +0800
commit67edf968f61231071bc96a80d7a4630164ab293f (patch)
tree9e29dd8abe134adecaaa9e22ca57881014da6404 /plugin/protocol/http/src
parent769e7cc37dac86bbcd8333e1c2b1958a253bc979 (diff)
#86 修正在HTTP请求在Resume()操作后设置HTTP应答,没有丢弃原始HTTP请求的问题。
* 原实现在用户调用resume()后,没有将用户设置的user_stream_action传递到原始HTTP请求,导致该原始请求没有被丢弃,现修正。@luqiuwen
Diffstat (limited to 'plugin/protocol/http/src')
-rw-r--r--plugin/protocol/http/src/http_entry.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/plugin/protocol/http/src/http_entry.cpp b/plugin/protocol/http/src/http_entry.cpp
index 44348ba..e29e6b4 100644
--- a/plugin/protocol/http/src/http_entry.cpp
+++ b/plugin/protocol/http/src/http_entry.cpp
@@ -392,6 +392,12 @@ enum tfe_stream_action http_connection_entry(const struct tfe_stream * stream, e
hs_private->release_lock--;
hs_private->suspend_counter++;
+ /* Retrieve the user's stream action, because the user may set request/response at resume's callback */
+ if(hf_private_in->is_user_stream_action_set)
+ {
+ hf_private_in->stream_action = hf_private_in->user_stream_action;
+ }
+
/* Call user callback, tell user we resume from suspend */
assert(hs_private->resume_tag_singal);
hs_private->resume_tag_singal = false;