Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(824)

Unified Diff: webrtc/common_types.cc

Issue 2805023002: Add read support of RtpStreamId/RepairedRtpStreamId header extensions. (Closed)
Patch Set: Rebase Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/common_types.cc
diff --git a/webrtc/common_types.cc b/webrtc/common_types.cc
index f5b487f6be0a5280c1e0a7c84f0037edd8e2db4f..cf92ae4a18959569b6b204bf9c4a8729964c6dc2 100644
--- a/webrtc/common_types.cc
+++ b/webrtc/common_types.cc
@@ -10,8 +10,9 @@
#include "webrtc/common_types.h"
-#include <limits>
#include <string.h>
+#include <limits>
+#include <type_traits>
#include "webrtc/base/checks.h"
#include "webrtc/base/stringutils.h"
@@ -20,6 +21,17 @@ namespace webrtc {
StreamDataCounters::StreamDataCounters() : first_packet_time_ms(-1) {}
+constexpr size_t StreamId::kMaxSize;
+
+void StreamId::Set(const void* data, size_t size) {
+ RTC_DCHECK_LE(size, kMaxSize);
nisse-webrtc 2017/04/10 12:25:00 I'd like an RTC_DCHECK(memchr(data, 0, size) == nu
danilchap 2017/04/10 13:27:05 Prefer to find those value acceptible. Added comme
nisse-webrtc 2017/04/11 07:59:24 Is that that the ArrayView constructor? I think th
danilchap 2017/04/11 10:05:26 std::string_view would make more sense for StreamI
+ memcpy(value_, data, size);
+ if (size < kMaxSize)
+ value_[size] = 0;
+}
+
+static_assert(std::is_trivially_destructible<StreamId>::value, "");
+
RTPHeaderExtension::RTPHeaderExtension()
: hasTransmissionTimeOffset(false),
transmissionTimeOffset(0),

Powered by Google App Engine
This is Rietveld 408576698