Repository: trafficserver
Updated Branches:
  refs/heads/master 0924e5d72 -> 964cc4630


[TS-3265]: Fix spdy req_map access to use iterator instead of operator[]


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/fc9f6707
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/fc9f6707
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/fc9f6707

Branch: refs/heads/master
Commit: fc9f67072a2ee949894f5d38abb30e1e556e9e26
Parents: 0924e5d
Author: Sudheer Vinukonda <[email protected]>
Authored: Sun Dec 28 18:05:48 2014 +0000
Committer: Sudheer Vinukonda <[email protected]>
Committed: Sun Dec 28 18:05:48 2014 +0000

----------------------------------------------------------------------
 proxy/spdy/SpdyCallbacks.cc | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/fc9f6707/proxy/spdy/SpdyCallbacks.cc
----------------------------------------------------------------------
diff --git a/proxy/spdy/SpdyCallbacks.cc b/proxy/spdy/SpdyCallbacks.cc
index 4d1aceb..7d7605d 100644
--- a/proxy/spdy/SpdyCallbacks.cc
+++ b/proxy/spdy/SpdyCallbacks.cc
@@ -52,7 +52,11 @@ spdy_callbacks_init(spdylay_session_callbacks *callbacks)
 void
 spdy_prepare_status_response_and_clean_request(SpdyClientSession *sm, int 
stream_id, const char *status)
 {
-  SpdyRequest *req = sm->req_map[stream_id];
+  SpdyRequest *req = sm->find_request(stream_id);
+  if (!req) {
+    Error ("spdy_prepare_status_response_and_clean_request, req object null 
for sm %" PRId64 ", stream_id %d", sm->sm_id, stream_id);
+    return;
+  }
   string date_str = http_date(time(0));
   const char **nv = new const char*[8+req->headers.size()*2+1];
 
@@ -328,7 +332,11 @@ spdy_on_ctrl_recv_callback(spdylay_session *session, 
spdylay_frame_type type,
 
   case SPDYLAY_HEADERS:
     stream_id = frame->syn_stream.stream_id;
-    req = sm->req_map[stream_id];
+    req = sm->find_request(stream_id);
+    if (!req) {
+      Error ("spdy_on_ctrl_recv_callback, req object null on SPDYLAY_HEADERS 
for sm %" PRId64 ", stream_id %d", sm->sm_id, stream_id);
+      return;
+    }
     req->append_nv(frame->headers.nv);
     break;
 

Reply via email to