Commit 0fcfcb70 authored by Fredrik Söderqvist's avatar Fredrik Söderqvist Committed by Commit Bot

Simplify RTCPeerConnection::CreateOrUpdate{Dtls,Ice}Transport}

These two functions can be rewritten to use a single insert() rather
than a find()+insert() pair.

Change-Id: I2e580e25c904ed7fde64e8291a07e1fa892f600b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2289840
Commit-Queue: Guido Urdaneta <guidou@chromium.org>
Auto-Submit: Fredrik Söderquist <fs@opera.com>
Reviewed-by: default avatarGuido Urdaneta <guidou@chromium.org>
Cr-Commit-Position: refs/heads/master@{#789630}
parent 2ad17d4e
...@@ -2707,18 +2707,15 @@ RTCDtlsTransport* RTCPeerConnection::CreateOrUpdateDtlsTransport( ...@@ -2707,18 +2707,15 @@ RTCDtlsTransport* RTCPeerConnection::CreateOrUpdateDtlsTransport(
if (!native_transport.get()) { if (!native_transport.get()) {
return nullptr; return nullptr;
} }
auto transport_locator = auto& transport = dtls_transports_by_native_transport_
dtls_transports_by_native_transport_.find(native_transport); .insert(native_transport.get(), nullptr)
if (transport_locator != dtls_transports_by_native_transport_.end()) { .stored_value->value;
auto transport = transport_locator->value; if (!transport) {
transport->ChangeState(information); RTCIceTransport* ice_transport =
return transport; CreateOrUpdateIceTransport(native_transport->ice_transport());
} transport = MakeGarbageCollected<RTCDtlsTransport>(
RTCDtlsTransport* transport = MakeGarbageCollected<RTCDtlsTransport>( GetExecutionContext(), std::move(native_transport), ice_transport);
GetExecutionContext(), native_transport, }
CreateOrUpdateIceTransport(native_transport->ice_transport()));
dtls_transports_by_native_transport_.insert(native_transport.get(),
transport);
transport->ChangeState(information); transport->ChangeState(information);
return transport; return transport;
} }
...@@ -2728,14 +2725,13 @@ RTCIceTransport* RTCPeerConnection::CreateOrUpdateIceTransport( ...@@ -2728,14 +2725,13 @@ RTCIceTransport* RTCPeerConnection::CreateOrUpdateIceTransport(
if (!ice_transport.get()) { if (!ice_transport.get()) {
return nullptr; return nullptr;
} }
auto transport_locator = auto& transport =
ice_transports_by_native_transport_.find(ice_transport); ice_transports_by_native_transport_.insert(ice_transport, nullptr)
if (transport_locator != ice_transports_by_native_transport_.end()) { .stored_value->value;
return transport_locator->value; if (!transport) {
transport = RTCIceTransport::Create(GetExecutionContext(),
std::move(ice_transport), this);
} }
RTCIceTransport* transport =
RTCIceTransport::Create(GetExecutionContext(), ice_transport, this);
ice_transports_by_native_transport_.insert(ice_transport.get(), transport);
return transport; return transport;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment