Revert "RTCPeerConnectionHandler: Keep track of senders."
This reverts commit 4979aac4. Reason for revert: None of these tests pass with Clang on Windows. That suggests that there are side effects that depend on order of function call argument evaluation, but I haven't been able to pin it down. http://crbug.com/746971 Original change's description: > RTCPeerConnectionHandler: Keep track of senders. > > https://chromium-review.googlesource.com/c/566806 showed that the > WebRtcRtpBrowserTest.AddAndRemoveTracks* tests would reliably crash > if the garbage collector was invoked between addTrack and getSenders. > Tracks that were added using addTrack would have their track adapters > (glue between blink and webrtc) kept alive only by the blink layer > sender holding on to a reference, since these were not kept alive by > any "local streams" holding a reference. > > The blink::RTCPeerConnection now holds a strong reference to senders > and receivers to prevent GC while in-use, with TODOs to remove ones > no longer used when addStream/removeStream is implemented using > addTrack/removeTrack. > > Furthermore the content::RTCPeerConnectionHandler holds on to the > content layer representation of senders so that their associated set > of streams are not forgotten between addTrack and getSenders. > > Having the handler keep track of senders is good practice, this gets > rid of the assumption that blink layer senders have to be kept alive. > A TODO was added to do the same for receivers (not yet required because > blink layer receivers are kept alive). > > With this change, the AddAndRemoveTracks* tests pass and are > re-enabled. > > Bug: 740650 > Change-Id: Iec3a39a994bef31904f2969d791125867ec1e398 > Reviewed-on: https://chromium-review.googlesource.com/567184 > Reviewed-by: Henrik Boström <hbos@chromium.org> > Reviewed-by: Taylor Brandstetter <deadbeef@chromium.org> > Reviewed-by: Jochen Eisinger <jochen@chromium.org> > Commit-Queue: Henrik Boström <hbos@chromium.org> > Cr-Commit-Position: refs/heads/master@{#487430} TBR=hbos@chromium.org,deadbeef@chromium.org,jochen@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 740650 Change-Id: Ie514367178863307b3596a5a34d2fdaed0fac817 Reviewed-on: https://chromium-review.googlesource.com/580367Reviewed-by:Reid Kleckner <rnk@chromium.org> Commit-Queue: Reid Kleckner <rnk@chromium.org> Cr-Commit-Position: refs/heads/master@{#488415}
Showing
Please register or sign in to comment