From 588783adcd2bcf1a788cfd318e1394f241e9a78f Mon Sep 17 00:00:00 2001 From: skvlad Date: Thu, 11 Aug 2016 14:29:25 -0700 Subject: [PATCH] Return nil from RTCPeerConnectionFactory when creation fails RTCPeerConnectionFactory.createPeerConnection did not check the return value of the native createPeerConnection() - so when the native PC fails to be created, it could end up attempting to use a null pointer. The change makes it return nil when the creation fails. The application can then detect and respond to the failure. Review-Url: https://codereview.webrtc.org/2240633004 Cr-Commit-Position: refs/heads/master@{#13732} --- webrtc/sdk/objc/Framework/Classes/RTCPeerConnection.mm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/webrtc/sdk/objc/Framework/Classes/RTCPeerConnection.mm b/webrtc/sdk/objc/Framework/Classes/RTCPeerConnection.mm index 99a0db3d76..428eb2496f 100644 --- a/webrtc/sdk/objc/Framework/Classes/RTCPeerConnection.mm +++ b/webrtc/sdk/objc/Framework/Classes/RTCPeerConnection.mm @@ -232,6 +232,9 @@ void PeerConnectionDelegateAdapter::OnIceCandidatesRemoved( nullptr, nullptr, _observer.get()); + if (!_peerConnection) { + return nil; + } _localStreams = [[NSMutableArray alloc] init]; _delegate = delegate; }