Index: net/spdy/spdy_stream.cc |
diff --git a/net/spdy/spdy_stream.cc b/net/spdy/spdy_stream.cc |
index aeb370e4fddf5a3ab5dc24c3dbfcfdb1a871ffbd..c134ef84c750db29533dff645d5de9f02b57b312 100644 |
--- a/net/spdy/spdy_stream.cc |
+++ b/net/spdy/spdy_stream.cc |
@@ -161,6 +161,11 @@ SpdyFrame* SpdyStream::ProduceNextFrame() { |
} |
SpdyStream::~SpdyStream() { |
+ if (domain_bound_cert_request_handle_ != NULL) { |
+ ServerBoundCertService* sbc_service = session_->GetServerBoundCertService(); |
+ sbc_service->CancelRequest(domain_bound_cert_request_handle_); |
+ domain_bound_cert_request_handle_ = NULL; |
Ryan Hamilton
2012/12/28 16:30:53
This seems like a reasonable place to put this log
mattm
2013/01/09 04:27:51
Done.
Ryan Hamilton
2013/01/09 04:48:03
Nice! A bit more code to implement the RequestHan
|
+ } |
UpdateHistograms(); |
while (!pending_frames_.empty()) { |
PendingFrame frame = pending_frames_.back(); |
@@ -554,6 +559,12 @@ void SpdyStream::Cancel() { |
if (cancelled()) |
return; |
+ if (domain_bound_cert_request_handle_ != NULL) { |
+ ServerBoundCertService* sbc_service = session_->GetServerBoundCertService(); |
+ sbc_service->CancelRequest(domain_bound_cert_request_handle_); |
+ domain_bound_cert_request_handle_ = NULL; |
+ } |
+ |
cancelled_ = true; |
if (session_->IsStreamActive(stream_id_)) |
session_->ResetStream(stream_id_, CANCEL, ""); |
@@ -647,6 +658,7 @@ GURL SpdyStream::GetUrl() const { |
void SpdyStream::OnGetDomainBoundCertComplete(int result) { |
DCHECK_EQ(STATE_GET_DOMAIN_BOUND_CERT_COMPLETE, io_state_); |
+ domain_bound_cert_request_handle_ = NULL; |
DoLoop(result); |
} |