| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // See header file for description of DnsQueue class | 5 // See header file for description of DnsQueue class |
| 6 | 6 |
| 7 #include "chrome/renderer/net/predictor_queue.h" | 7 #include "components/predictor/renderer/predictor_queue.h" |
| 8 | 8 |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/metrics/stats_counters.h" | 10 #include "base/metrics/stats_counters.h" |
| 11 | 11 |
| 12 namespace predictor { |
| 13 |
| 12 DnsQueue::DnsQueue(BufferSize size) | 14 DnsQueue::DnsQueue(BufferSize size) |
| 13 : buffer_(new char[size + 2]), | 15 : buffer_(new char[size + 2]), |
| 14 buffer_size_(size + 1), | 16 buffer_size_(size + 1), |
| 15 buffer_sentinel_(size + 1), | 17 buffer_sentinel_(size + 1), |
| 16 size_(0) { | 18 size_(0) { |
| 17 CHECK(0 < static_cast<BufferSize>(size + 3)); // Avoid overflow worries. | 19 CHECK(0 < static_cast<BufferSize>(size + 3)); // Avoid overflow worries. |
| 18 buffer_[buffer_sentinel_] = '\0'; // Guard byte to help reading data. | 20 buffer_[buffer_sentinel_] = '\0'; // Guard byte to help reading data. |
| 19 readable_ = writeable_ = 0; // Buffer starts empty. | 21 readable_ = writeable_ = 0; // Buffer starts empty. |
| 20 } | 22 } |
| 21 | 23 |
| (...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 143 } | 145 } |
| 144 | 146 |
| 145 bool DnsQueue::Validate() { | 147 bool DnsQueue::Validate() { |
| 146 return (readable_ >= 0) && | 148 return (readable_ >= 0) && |
| 147 readable_ < buffer_sentinel_ && | 149 readable_ < buffer_sentinel_ && |
| 148 writeable_ >= 0 && | 150 writeable_ >= 0 && |
| 149 writeable_ < buffer_sentinel_ && | 151 writeable_ < buffer_sentinel_ && |
| 150 '\0' == buffer_[buffer_sentinel_] && | 152 '\0' == buffer_[buffer_sentinel_] && |
| 151 ((0 == size_) == (readable_ == writeable_)); | 153 ((0 == size_) == (readable_ == writeable_)); |
| 152 } | 154 } |
| 155 |
| 156 } // namespace predictor |
| OLD | NEW |