Closed Bug 1624989 Opened 4 years ago Closed 2 years ago

Move RTCPeerConnection's operations chain to c++

Categories

(Core :: WebRTC: Signaling, task, P2)

task

Tracking

()

RESOLVED FIXED
101 Branch
Tracking Status
firefox101 --- fixed

People

(Reporter: bwc, Assigned: bwc)

References

Details

Attachments

(2 files, 3 obsolete files)

We should do this before moving RTCRtpSender to c++, because RTCRtpSender.replaceTrack needs to the use the PC's operations chain, and it will be much cleaner if we do this first.

Priority: -- → P2
Assignee: nobody → docfaraday
Depends on: 1402997
Depends on: 1755318
No longer depends on: 1402997

This is really unwieldy right now, because there is presently no c++ version of Then for dom::Promise that allows the behavior for rejection to be specified. We could just convert everything to MozPromise and back, but that would be pretty gross and I would like to avoid it.

I think the only reasonable way forward is to write something similar to Promise::ThenWithCycleCollectedArgs that allows a rejection function to be specified in such a way that a promise rejection can lead to a promise resolution in the next step in the chain.

Depends on D140357

Depends on D140358

This happens to fix a failure in webrtc/RTCPeerConnection-restartIce.https.html.

Depends on D141738

Attachment #9266525 - Attachment is obsolete: true
Attachment #9266527 - Attachment is obsolete: true
Attachment #9266526 - Attachment is obsolete: true

Try looks the same as baseline.

Pushed by bcampen@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d570e7369906
Move RTCPeerConnection's operations chain to c++ r=jib,webidl,smaug
https://hg.mozilla.org/integration/autoland/rev/235f461a1229
Some simplifications that are possible because PeerConnectionImpl is cycle-collected. r=jib
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 101 Branch
Regressions: 1763654
Regressions: 1763832
Regressions: 1766122
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: