| Index: net/spdy/spdy_stream.h
|
| diff --git a/net/spdy/spdy_stream.h b/net/spdy/spdy_stream.h
|
| index 8653d9fde6fecfdd8b80bffe6ed0878a90b2c600..0e383b321dbd186ae362879b285aa94d689df39f 100644
|
| --- a/net/spdy/spdy_stream.h
|
| +++ b/net/spdy/spdy_stream.h
|
| @@ -88,6 +88,21 @@ class NET_EXPORT_PRIVATE SpdyStream
|
| DISALLOW_COPY_AND_ASSIGN(Delegate);
|
| };
|
|
|
| + // Indicates pending frame type.
|
| + enum PendingFrameType {
|
| + TYPE_HEADER,
|
| + TYPE_DATA
|
| + };
|
| +
|
| + // Structure to contains pending frame information.
|
| + typedef struct {
|
| + PendingFrameType type;
|
| + union {
|
| + SpdyHeaderBlock* header_block;
|
| + SpdyDataFrame* data_frame;
|
| + };
|
| + } PendingFrame;
|
| +
|
| // SpdyStream constructor
|
| SpdyStream(SpdySession* session,
|
| bool pushed,
|
| @@ -222,6 +237,10 @@ class NET_EXPORT_PRIVATE SpdyStream
|
| // For non push stream, it will send SYN_STREAM frame.
|
| int SendRequest(bool has_upload_data);
|
|
|
| + // Sends a HEADERS frame. SpdyStream owns |headers| and will release it after
|
| + // the HEADERS frame is actually sent.
|
| + int WriteHeaders(SpdyHeaderBlock* headers);
|
| +
|
| // Sends DATA frame.
|
| int WriteStreamData(IOBuffer* data, int length,
|
| SpdyDataFlags flags);
|
| @@ -345,7 +364,7 @@ class NET_EXPORT_PRIVATE SpdyStream
|
| scoped_ptr<SpdyHeaderBlock> response_;
|
| base::Time response_time_;
|
|
|
| - std::list<SpdyFrame*> pending_data_frames_;
|
| + std::list<PendingFrame> pending_frames_;
|
|
|
| State io_state_;
|
|
|
|
|