diff options
author | rch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-12-22 19:30:07 +0000 |
---|---|---|
committer | rch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-12-22 19:30:07 +0000 |
commit | 25b21aeecac7c7ec16b42de9062967a0cc8ad843 (patch) | |
tree | c97f42c0279dc0d27ace19f735ccd0207b4c67d1 /net/quic | |
parent | 7fd163e7bd4b19b6017f06124faee09a4b5080f8 (diff) | |
download | chromium_src-25b21aeecac7c7ec16b42de9062967a0cc8ad843.zip chromium_src-25b21aeecac7c7ec16b42de9062967a0cc8ad843.tar.gz chromium_src-25b21aeecac7c7ec16b42de9062967a0cc8ad843.tar.bz2 |
Cleanup Cls regarding issue 11586006
Merge internal change: 40298872
TBR=jar@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11660002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174538 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/quic')
-rw-r--r-- | net/quic/quic_data_writer.cc | 4 | ||||
-rw-r--r-- | net/quic/quic_data_writer_test.cc | 34 |
2 files changed, 38 insertions, 0 deletions
diff --git a/net/quic/quic_data_writer.cc b/net/quic/quic_data_writer.cc index 0261d94..7639566 100644 --- a/net/quic/quic_data_writer.cc +++ b/net/quic/quic_data_writer.cc @@ -71,6 +71,10 @@ bool QuicDataWriter::WriteStringPiece16(StringPiece val) { } char* QuicDataWriter::BeginWrite(size_t length) { + if (length_ > capacity_) { + return NULL; + } + if (capacity_ - length_ < length) { return NULL; } diff --git a/net/quic/quic_data_writer_test.cc b/net/quic/quic_data_writer_test.cc new file mode 100644 index 0000000..901dd39 --- /dev/null +++ b/net/quic/quic_data_writer_test.cc @@ -0,0 +1,34 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "net/quic/quic_data_writer.h" + +#include "testing/gtest/include/gtest/gtest.h" + +namespace net { +namespace test { +namespace { + +TEST(QuicDataWriterTest, WriteUint8ToOffset) { + QuicDataWriter writer(4); + + EXPECT_TRUE(writer.WriteUInt8ToOffset(1, 0)); + EXPECT_TRUE(writer.WriteUInt8ToOffset(2, 1)); + EXPECT_TRUE(writer.WriteUInt8ToOffset(3, 2)); + EXPECT_TRUE(writer.WriteUInt8ToOffset(4, 3)); + EXPECT_FALSE(writer.WriteUInt8ToOffset(5, 4)); + + char* data = writer.take(); + + EXPECT_EQ(1, data[0]); + EXPECT_EQ(2, data[1]); + EXPECT_EQ(3, data[2]); + EXPECT_EQ(4, data[3]); + + delete[] data; +} + +} // namespace +} // namespace test +} // namespace net |