| Index: net/websockets/websocket_frame_parser.cc
|
| diff --git a/net/websockets/websocket_frame_parser.cc b/net/websockets/websocket_frame_parser.cc
|
| index b16996d632f294fbaec0b553aaa3f871c8a7fa5c..37e50f040cb423f88e7832c35d6579e5cdca45d1 100644
|
| --- a/net/websockets/websocket_frame_parser.cc
|
| +++ b/net/websockets/websocket_frame_parser.cc
|
| @@ -36,7 +36,7 @@ namespace net {
|
| WebSocketFrameParser::WebSocketFrameParser()
|
| : current_read_pos_(0),
|
| frame_offset_(0),
|
| - websocket_error_(WEB_SOCKET_OK) {
|
| + websocket_error_(kWebSocketNormalClosure) {
|
| std::fill(masking_key_.key,
|
| masking_key_.key + WebSocketFrameHeader::kMaskingKeyLength,
|
| '\0');
|
| @@ -49,7 +49,7 @@ bool WebSocketFrameParser::Decode(
|
| const char* data,
|
| size_t length,
|
| ScopedVector<WebSocketFrameChunk>* frame_chunks) {
|
| - if (websocket_error_ != WEB_SOCKET_OK)
|
| + if (websocket_error_ != kWebSocketNormalClosure)
|
| return false;
|
| if (!length)
|
| return true;
|
| @@ -61,7 +61,7 @@ bool WebSocketFrameParser::Decode(
|
| bool first_chunk = false;
|
| if (!current_frame_header_.get()) {
|
| DecodeFrameHeader();
|
| - if (websocket_error_ != WEB_SOCKET_OK)
|
| + if (websocket_error_ != kWebSocketNormalClosure)
|
| return false;
|
| // If frame header is incomplete, then carry over the remaining
|
| // data to the next round of Decode().
|
| @@ -129,7 +129,7 @@ void WebSocketFrameParser::DecodeFrameHeader() {
|
| current += 2;
|
| payload_length = payload_length_16;
|
| if (payload_length <= kMaxPayloadLengthWithoutExtendedLengthField)
|
| - websocket_error_ = WEB_SOCKET_ERR_PROTOCOL_ERROR;
|
| + websocket_error_ = kWebSocketErrorProtocolError;
|
| } else if (payload_length == kPayloadLengthWithEightByteExtendedLengthField) {
|
| if (end - current < 8)
|
| return;
|
| @@ -137,12 +137,12 @@ void WebSocketFrameParser::DecodeFrameHeader() {
|
| current += 8;
|
| if (payload_length <= kuint16max ||
|
| payload_length > static_cast<uint64>(kint64max)) {
|
| - websocket_error_ = WEB_SOCKET_ERR_PROTOCOL_ERROR;
|
| + websocket_error_ = kWebSocketErrorProtocolError;
|
| } else if (payload_length > static_cast<uint64>(kint32max)) {
|
| - websocket_error_ = WEB_SOCKET_ERR_MESSAGE_TOO_BIG;
|
| + websocket_error_ = kWebSocketErrorMessageTooBig;
|
| }
|
| }
|
| - if (websocket_error_ != WEB_SOCKET_OK) {
|
| + if (websocket_error_ != kWebSocketNormalClosure) {
|
| buffer_.clear();
|
| current_read_pos_ = 0;
|
| current_frame_header_.reset();
|
| @@ -159,12 +159,11 @@ void WebSocketFrameParser::DecodeFrameHeader() {
|
| std::fill(masking_key_.key, masking_key_.key + kMaskingKeyLength, '\0');
|
| }
|
|
|
| - current_frame_header_.reset(new WebSocketFrameHeader);
|
| + current_frame_header_.reset(new WebSocketFrameHeader(opcode));
|
| current_frame_header_->final = final;
|
| current_frame_header_->reserved1 = reserved1;
|
| current_frame_header_->reserved2 = reserved2;
|
| current_frame_header_->reserved3 = reserved3;
|
| - current_frame_header_->opcode = opcode;
|
| current_frame_header_->masked = masked;
|
| current_frame_header_->payload_length = payload_length;
|
| current_read_pos_ += current - start;
|
| @@ -184,7 +183,7 @@ scoped_ptr<WebSocketFrameChunk> WebSocketFrameParser::DecodeFramePayload(
|
|
|
| scoped_ptr<WebSocketFrameChunk> frame_chunk(new WebSocketFrameChunk);
|
| if (first_chunk) {
|
| - frame_chunk->header.reset(new WebSocketFrameHeader(*current_frame_header_));
|
| + frame_chunk->header = current_frame_header_->Clone();
|
| }
|
| frame_chunk->final_chunk = false;
|
| if (next_size) {
|
|
|