Chromium Code Reviews| Index: net/spdy/spdy_stream.cc |
| =================================================================== |
| --- net/spdy/spdy_stream.cc (revision 149736) |
| +++ net/spdy/spdy_stream.cc (working copy) |
| @@ -176,7 +176,11 @@ |
| // We don't have complete headers. Assume we're waiting for another |
| // HEADERS frame. Since we don't have headers, we had better not have |
| // any pending data frames. |
| - DCHECK_EQ(0U, pending_buffers_.size()); |
| + if (pending_buffers_.size() != 0U) { |
| + LogStreamError(ERR_SPDY_PROTOCOL_ERROR, |
| + "HEADERS incomplete headers, but pending data frames."); |
| + session_->CloseStream(stream_id_, ERR_SPDY_PROTOCOL_ERROR); |
| + } |
| return; |
| } |
| @@ -490,7 +494,13 @@ |
| return; |
| } |
| - delegate_->OnDataReceived(data, length); |
| + if (delegate_->OnDataReceived(data, length) != net::OK) { |
| + // We haven't received all the required headers. |
|
Ryan Hamilton
2012/08/03 19:52:14
This comment assumes something about the implement
ramant (doing other things)
2012/08/03 20:50:40
Done.
|
| + LogStreamError(ERR_SPDY_PROTOCOL_ERROR, |
| + "Data is received but incomplete headers."); |
|
Ryan Hamilton
2012/08/03 19:52:14
Same point as above for the error description.
ramant (doing other things)
2012/08/03 20:50:40
Done.
|
| + session_->CloseStream(stream_id_, ERR_SPDY_PROTOCOL_ERROR); |
| + return; |
| + } |
| } |
| // This function is only called when an entire frame is written. |