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), |