From 42ca68ab7264154e16291c99f1de7338abc56af7 Mon Sep 17 00:00:00 2001 From: danilchap Date: Mon, 31 Oct 2016 03:34:40 -0700 Subject: [PATCH] Ensure one does not register same rtp header extension with different id Added assert to RtpHeaderExtensionMap Altered tests that did. BUG=webrtc:1994 Review-Url: https://codereview.webrtc.org/2462663002 Cr-Commit-Position: refs/heads/master@{#14840} --- webrtc/modules/rtp_rtcp/source/rtp_header_extension.cc | 4 ++++ webrtc/video/video_send_stream_tests.cc | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/webrtc/modules/rtp_rtcp/source/rtp_header_extension.cc b/webrtc/modules/rtp_rtcp/source/rtp_header_extension.cc index 27bbda4cc9..7fdff34985 100644 --- a/webrtc/modules/rtp_rtcp/source/rtp_header_extension.cc +++ b/webrtc/modules/rtp_rtcp/source/rtp_header_extension.cc @@ -10,12 +10,15 @@ #include +#include "webrtc/base/checks.h" #include "webrtc/common_types.h" #include "webrtc/modules/rtp_rtcp/source/rtp_header_extension.h" #include "webrtc/modules/rtp_rtcp/source/rtp_utility.h" namespace webrtc { +constexpr uint8_t RtpHeaderExtensionMap::kInvalidId; + RtpHeaderExtensionMap::RtpHeaderExtensionMap() { } @@ -48,6 +51,7 @@ int32_t RtpHeaderExtensionMap::Register(RTPExtensionType type, uint8_t id) { // so return success. return 0; } + RTC_DCHECK_EQ(kInvalidId, GetId(type)); extensionMap_[id] = new HeaderExtension(type); return 0; } diff --git a/webrtc/video/video_send_stream_tests.cc b/webrtc/video/video_send_stream_tests.cc index 2663516b6b..61ca9f0f9e 100644 --- a/webrtc/video/video_send_stream_tests.cc +++ b/webrtc/video/video_send_stream_tests.cc @@ -212,7 +212,7 @@ TEST_F(VideoSendStreamTest, SupportsTransmissionTimeOffset) { } TEST_F(VideoSendStreamTest, SupportsTransportWideSequenceNumbers) { - static const uint8_t kExtensionId = 13; + static const uint8_t kExtensionId = test::kTransportSequenceNumberExtensionId; class TransportWideSequenceNumberObserver : public test::SendTest { public: TransportWideSequenceNumberObserver() @@ -1215,7 +1215,7 @@ TEST_F(VideoSendStreamTest, MinTransmitBitrateRespectsRemb) { TEST_F(VideoSendStreamTest, ChangingNetworkRoute) { static const int kStartBitrateBps = 300000; static const int kNewMaxBitrateBps = 1234567; - static const uint8_t kExtensionId = 13; + static const uint8_t kExtensionId = test::kTransportSequenceNumberExtensionId; class ChangingNetworkRouteTest : public test::EndToEndTest { public: ChangingNetworkRouteTest()