Index: net/spdy/spdy_session.cc |
diff --git a/net/spdy/spdy_session.cc b/net/spdy/spdy_session.cc |
index 278fa25ac6f25bf9c86c0bdbcd37d573dc187598..4f2ac3adc54d069094f7338771ba13c81b728f38 100644 |
--- a/net/spdy/spdy_session.cc |
+++ b/net/spdy/spdy_session.cc |
@@ -535,7 +535,7 @@ void SpdySession::ProcessPendingCreateStreams() { |
while (!max_concurrent_streams_ || |
active_streams_.size() < max_concurrent_streams_) { |
bool no_pending_create_streams = true; |
- for (int i = 0;i < NUM_PRIORITIES;++i) { |
+ for (int i = NUM_PRIORITIES - 1; i >= MINIMUM_PRIORITY; --i) { |
if (!create_stream_queues_[i].empty()) { |
PendingCreateStream pending_create = create_stream_queues_[i].front(); |
create_stream_queues_[i].pop(); |
@@ -568,7 +568,7 @@ void SpdySession::CancelPendingCreateStreams( |
return; |
} |
- for (int i = 0;i < NUM_PRIORITIES;++i) { |
+ for (int i = 0; i < NUM_PRIORITIES; ++i) { |
PendingCreateStreamQueue tmp; |
// Make a copy removing this trans |
while (!create_stream_queues_[i].empty()) { |
@@ -590,6 +590,9 @@ int SpdySession::CreateStreamImpl( |
RequestPriority priority, |
scoped_refptr<SpdyStream>* spdy_stream, |
const BoundNetLog& stream_net_log) { |
+ DCHECK_GE(priority, MINIMUM_PRIORITY); |
+ DCHECK_LT(priority, NUM_PRIORITIES); |
+ |
// Make sure that we don't try to send https/wss over an unauthenticated, but |
// encrypted SSL socket. |
if (is_secure_ && certificate_error_code_ != OK && |
@@ -622,7 +625,6 @@ int SpdySession::CreateStreamImpl( |
static_cast<int>(priority), 0, 10, 11); |
// TODO(mbelshe): Optimize memory allocations |
- DCHECK(priority >= net::HIGHEST && priority < net::NUM_PRIORITIES); |
DCHECK_EQ(active_streams_[stream_id].get(), stream.get()); |
return OK; |
@@ -834,7 +836,7 @@ void SpdySession::ResetStream(SpdyStreamId stream_id, |
buffered_spdy_framer_->CreateRstStream(stream_id, status)); |
// Default to lowest priority unless we know otherwise. |
- int priority = 3; |
+ RequestPriority priority = net::IDLE; |
if(IsStreamActive(stream_id)) { |
scoped_refptr<SpdyStream> stream = active_streams_[stream_id]; |
priority = stream->priority(); |
@@ -1054,7 +1056,8 @@ void SpdySession::WriteSocket() { |
memcpy(buffer->data(), compressed_frame->data(), size); |
// Attempt to send the frame. |
- in_flight_write_ = SpdyIOBuffer(buffer, size, 0, next_buffer.stream()); |
+ in_flight_write_ = SpdyIOBuffer(buffer, size, HIGHEST, |
+ next_buffer.stream()); |
} else { |
size = uncompressed_frame.length() + SpdyFrame::kHeaderSize; |
in_flight_write_ = next_buffer; |
@@ -1094,7 +1097,7 @@ void SpdySession::CloseAllStreams(net::Error status) { |
unclaimed_pushed_streams_.clear(); |
} |
- for (int i = 0;i < NUM_PRIORITIES;++i) { |
+ for (int i = 0; i < NUM_PRIORITIES; ++i) { |
while (!create_stream_queues_[i].empty()) { |
PendingCreateStream pending_create = create_stream_queues_[i].front(); |
create_stream_queues_[i].pop(); |
@@ -1126,7 +1129,7 @@ int SpdySession::GetNewStreamId() { |
} |
void SpdySession::QueueFrame(SpdyFrame* frame, |
- SpdyPriority priority, |
+ RequestPriority priority, |
SpdyStream* stream) { |
int length = SpdyFrame::kHeaderSize + frame->length(); |
IOBuffer* buffer = new IOBuffer(length); |
@@ -1741,7 +1744,7 @@ void SpdySession::SendSettings() { |
scoped_ptr<SpdySettingsControlFrame> settings_frame( |
buffered_spdy_framer_->CreateSettings(settings_map_new)); |
sent_settings_ = true; |
- QueueFrame(settings_frame.get(), 0, NULL); |
+ QueueFrame(settings_frame.get(), HIGHEST, NULL); |
} |
void SpdySession::HandleSetting(uint32 id, uint32 value) { |
@@ -1818,8 +1821,7 @@ void SpdySession::WritePingFrame(uint32 unique_id) { |
DCHECK(buffered_spdy_framer_.get()); |
scoped_ptr<SpdyPingControlFrame> ping_frame( |
buffered_spdy_framer_->CreatePingFrame(next_ping_id_)); |
- QueueFrame( |
- ping_frame.get(), buffered_spdy_framer_->GetHighestPriority(), NULL); |
+ QueueFrame(ping_frame.get(), HIGHEST, NULL); |
if (net_log().IsLoggingAllEvents()) { |
net_log().AddEvent( |