Skip to content

webrtcbin: only start gathering on local descriptions

If we are in a state where we are answering, we would start gathering when the offer is set which is incorrect for at least two reasons.

  1. Sending ICE candidates before sending an answer is a hard error in all of the major browsers and will fail the negotiation.
  2. If libnice ever adds the username fragment to the candidate for ice-restart hardening, the ice username and fragment would be incorrect.

JSEP also hints that the right call flow is to only start gathering when a local description is set in 4.1.9 setLocalDescription

"This API indirectly controls the candidate gathering process."

as well as hints throughout other sections.

Merge request reports