You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by bc...@apache.org on 2015/11/10 22:13:04 UTC
trafficserver git commit: TS-4011: HTTP/2 coredump with NULL FetchSM,
another one
Repository: trafficserver
Updated Branches:
refs/heads/master 0d4c680e1 -> 0d8f08334
TS-4011: HTTP/2 coredump with NULL FetchSM, another one
Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/0d8f0833
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/0d8f0833
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/0d8f0833
Branch: refs/heads/master
Commit: 0d8f083341300f7dfb384b4139c34d53a843c52d
Parents: 0d4c680
Author: Bryan Call <bc...@apache.org>
Authored: Tue Nov 10 10:54:43 2015 -0800
Committer: Bryan Call <bc...@apache.org>
Committed: Tue Nov 10 10:54:43 2015 -0800
----------------------------------------------------------------------
proxy/http2/Http2ConnectionState.cc | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d8f0833/proxy/http2/Http2ConnectionState.cc
----------------------------------------------------------------------
diff --git a/proxy/http2/Http2ConnectionState.cc b/proxy/http2/Http2ConnectionState.cc
index d6c4775..54e97f8 100644
--- a/proxy/http2/Http2ConnectionState.cc
+++ b/proxy/http2/Http2ConnectionState.cc
@@ -836,7 +836,7 @@ Http2ConnectionState::restart_streams()
Http2Stream *s = stream_list.head;
while (s) {
Http2Stream *next = s->link.next;
- if (s->get_fetcher() != NULL && min(this->client_rwnd, s->client_rwnd) > 0) {
+ if (min(this->client_rwnd, s->client_rwnd) > 0) {
this->send_data_frame(s->get_fetcher());
}
s = next;
@@ -887,6 +887,10 @@ Http2ConnectionState::send_data_frame(FetchSM *fetch_sm)
{
DebugSsn(this->ua_session, "http2_cs", "[%" PRId64 "] Send DATA frame", this->ua_session->connection_id());
+ if (fetch_sm == NULL) {
+ return;
+ }
+
size_t buf_len = BUFFER_SIZE_FOR_INDEX(buffer_size_index[HTTP2_FRAME_TYPE_DATA]) - HTTP2_FRAME_HEADER_LEN;
uint8_t payload_buffer[buf_len];