Repository: trafficserver Updated Branches: refs/heads/master 5437ae74a -> 71b370c29
TS-2915: SEGV occurs when POST request was posted without Expect: 100-continue header Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/71b370c2 Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/71b370c2 Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/71b370c2 Branch: refs/heads/master Commit: 71b370c298dcd50c41e5bf95ceb99c82153195e1 Parents: 5437ae7 Author: Feifei Cai <[email protected]> Authored: Fri Jul 18 12:12:18 2014 -0700 Committer: Bryan Call <[email protected]> Committed: Fri Jul 18 12:13:15 2014 -0700 ---------------------------------------------------------------------- CHANGES | 2 ++ proxy/http/HttpSM.cc | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/71b370c2/CHANGES ---------------------------------------------------------------------- diff --git a/CHANGES b/CHANGES index 46a458e..c7a260b 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,8 @@ -*- coding: utf-8 -*- Changes with Apache Traffic Server 5.1.0 + *) [TS-2915] SEGV occurs when POST request was posted without Expect: 100-continue header + *) [TS-2940] Fix varargs corruption when logging fatal errors. *) [TS-2935] Clean up semaphore platform code. http://git-wip-us.apache.org/repos/asf/trafficserver/blob/71b370c2/proxy/http/HttpSM.cc ---------------------------------------------------------------------- diff --git a/proxy/http/HttpSM.cc b/proxy/http/HttpSM.cc index 24acf9a..df9d31d 100644 --- a/proxy/http/HttpSM.cc +++ b/proxy/http/HttpSM.cc @@ -3287,7 +3287,8 @@ HttpSM::tunnel_handler_post_ua(int event, HttpTunnelProducer * p) // We have completed reading POST data from client here. // It's time to free MIOBuffer of 100 Continue's response now, // althought this is a little late. - if (t_state.http_config_param->send_100_continue_response) { + if (t_state.http_config_param->send_100_continue_response && + ua_entry->write_buffer) { free_MIOBuffer(ua_entry->write_buffer); ua_entry->write_buffer = NULL; }
