aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAli Tofigh <alito@webrtc.org>2022-05-09 13:33:36 +0200
committerWebRTC LUCI CQ <webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-05-10 10:32:41 +0000
commite00d7d0ce664233402afb3ece94fc270d2e3a8cf (patch)
treed260fa9da73ce766ad325b2f5b136ad90910bdda
parent6344bf10acc19d28eea67ddad93cb90b7c3e9697 (diff)
downloadwebrtc-e00d7d0ce664233402afb3ece94fc270d2e3a8cf.tar.gz
Adopt absl::string_view in CopyOnWriteBuffer
Bug: webrtc:13579 Change-Id: Ia2b99a28ed0c103215e8616da67a5c961b957199 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260465 Reviewed-by: Harald Alvestrand <hta@webrtc.org> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Commit-Queue: Ali Tofigh <alito@webrtc.org> Cr-Commit-Position: refs/heads/main@{#36832}
-rw-r--r--logging/BUILD.gn1
-rw-r--r--logging/rtc_event_log/rtc_event_log_parser.cc4
-rw-r--r--rtc_base/BUILD.gn1
-rw-r--r--rtc_base/copy_on_write_buffer.cc4
-rw-r--r--rtc_base/copy_on_write_buffer.h3
5 files changed, 10 insertions, 3 deletions
diff --git a/logging/BUILD.gn b/logging/BUILD.gn
index 67566ce5e3..d8b4b8493b 100644
--- a/logging/BUILD.gn
+++ b/logging/BUILD.gn
@@ -449,6 +449,7 @@ if (rtc_enable_protobuf) {
"../modules/audio_coding:audio_network_adaptor",
"../modules/rtp_rtcp:rtp_rtcp_format",
"../rtc_base:checks",
+ "../rtc_base:copy_on_write_buffer",
"../rtc_base:ignore_wundef",
"../rtc_base:logging",
"../rtc_base:protobuf_utils",
diff --git a/logging/rtc_event_log/rtc_event_log_parser.cc b/logging/rtc_event_log/rtc_event_log_parser.cc
index b4392e8088..4033a593a1 100644
--- a/logging/rtc_event_log/rtc_event_log_parser.cc
+++ b/logging/rtc_event_log/rtc_event_log_parser.cc
@@ -38,6 +38,7 @@
#include "modules/rtp_rtcp/source/rtp_header_extensions.h"
#include "modules/rtp_rtcp/source/rtp_packet_received.h"
#include "rtc_base/checks.h"
+#include "rtc_base/copy_on_write_buffer.h"
#include "rtc_base/logging.h"
#include "rtc_base/numerics/safe_conversions.h"
#include "rtc_base/numerics/sequence_number_util.h"
@@ -1637,7 +1638,8 @@ ParsedRtcEventLog::ParseStatus ParsedRtcEventLog::StoreParsedLegacyEvent(
// Use RtpPacketReceived instead of more generic RtpPacket because former
// has a buildin convertion to RTPHeader.
RtpPacketReceived rtp_header;
- RTC_PARSE_CHECK_OR_RETURN(rtp_header.Parse(rtp_packet.header()));
+ RTC_PARSE_CHECK_OR_RETURN(
+ rtp_header.Parse(rtc::CopyOnWriteBuffer(rtp_packet.header())));
if (const RtpHeaderExtensionMap* extension_map = GetRtpHeaderExtensionMap(
rtp_packet.incoming(), rtp_header.Ssrc())) {
diff --git a/rtc_base/BUILD.gn b/rtc_base/BUILD.gn
index b4cf481194..33cd57f2e2 100644
--- a/rtc_base/BUILD.gn
+++ b/rtc_base/BUILD.gn
@@ -183,6 +183,7 @@ rtc_library("copy_on_write_buffer") {
"../api:scoped_refptr",
"system:rtc_export",
]
+ absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
}
rtc_library("event_tracer") {
diff --git a/rtc_base/copy_on_write_buffer.cc b/rtc_base/copy_on_write_buffer.cc
index f3cc710f85..850327b088 100644
--- a/rtc_base/copy_on_write_buffer.cc
+++ b/rtc_base/copy_on_write_buffer.cc
@@ -12,6 +12,8 @@
#include <stddef.h>
+#include "absl/strings/string_view.h"
+
namespace rtc {
CopyOnWriteBuffer::CopyOnWriteBuffer() : offset_(0), size_(0) {
@@ -28,7 +30,7 @@ CopyOnWriteBuffer::CopyOnWriteBuffer(CopyOnWriteBuffer&& buf)
RTC_DCHECK(IsConsistent());
}
-CopyOnWriteBuffer::CopyOnWriteBuffer(const std::string& s)
+CopyOnWriteBuffer::CopyOnWriteBuffer(absl::string_view s)
: CopyOnWriteBuffer(s.data(), s.length()) {}
CopyOnWriteBuffer::CopyOnWriteBuffer(size_t size)
diff --git a/rtc_base/copy_on_write_buffer.h b/rtc_base/copy_on_write_buffer.h
index 6837f06526..849f5f5df2 100644
--- a/rtc_base/copy_on_write_buffer.h
+++ b/rtc_base/copy_on_write_buffer.h
@@ -19,6 +19,7 @@
#include <type_traits>
#include <utility>
+#include "absl/strings/string_view.h"
#include "api/scoped_refptr.h"
#include "rtc_base/buffer.h"
#include "rtc_base/checks.h"
@@ -38,7 +39,7 @@ class RTC_EXPORT CopyOnWriteBuffer {
CopyOnWriteBuffer(CopyOnWriteBuffer&& buf);
// Construct a buffer from a string, convenient for unittests.
- CopyOnWriteBuffer(const std::string& s);
+ explicit CopyOnWriteBuffer(absl::string_view s);
// Construct a buffer with the specified number of uninitialized bytes.
explicit CopyOnWriteBuffer(size_t size);