| Index: net/base/io_buffer.cc
|
| diff --git a/net/base/io_buffer.cc b/net/base/io_buffer.cc
|
| index b1c72ceb76cf6b8bc6008cc777d7524cf8a46670..004bf0e524303d1677dbe2826ca8e75953e22d44 100644
|
| --- a/net/base/io_buffer.cc
|
| +++ b/net/base/io_buffer.cc
|
| @@ -83,6 +83,49 @@ DrainableIOBuffer::~DrainableIOBuffer() {
|
| data_ = NULL;
|
| }
|
|
|
| +SeekableIOBuffer::SeekableIOBuffer(int size)
|
| + : IOBuffer(size),
|
| + begin_(data_),
|
| + capacity_(size),
|
| + size_(0),
|
| + used_(0) {
|
| +}
|
| +
|
| +void SeekableIOBuffer::DidConsume(int bytes) {
|
| + SetOffset(used_ + bytes);
|
| +}
|
| +
|
| +int SeekableIOBuffer::BytesRemaining() const {
|
| + return size_ - used_;
|
| +}
|
| +
|
| +int SeekableIOBuffer::BytesConsumed() const {
|
| + return used_;
|
| +}
|
| +
|
| +void SeekableIOBuffer::SetOffset(int bytes) {
|
| + DCHECK_GE(bytes, 0);
|
| + DCHECK_LE(bytes, size_);
|
| + used_ = bytes;
|
| + data_ = begin_ + used_;
|
| +}
|
| +
|
| +void SeekableIOBuffer::DidAppend(int bytes) {
|
| + DCHECK_GE(size_ + bytes, 0);
|
| + DCHECK_LE(size_ + bytes, capacity_);
|
| + size_ += bytes;
|
| +}
|
| +
|
| +void SeekableIOBuffer::Clear() {
|
| + size_ = 0;
|
| + SetOffset(0);
|
| +}
|
| +
|
| +SeekableIOBuffer::~SeekableIOBuffer() {
|
| + // data_ will be deleted in IOBuffer::~IOBuffer().
|
| + data_ = begin_;
|
| +}
|
| +
|
| GrowableIOBuffer::GrowableIOBuffer()
|
| : IOBuffer(),
|
| capacity_(0),
|
|
|