- From: Harald Alvestrand <harald@alvestrand.no>
- Date: Mon, 04 Jun 2012 05:22:20 +0200
- To: Eric Rescorla <ekr@rtfm.com>
- CC: public-webrtc@w3.org
On 06/01/2012 10:55 PM, Eric Rescorla wrote: > The specification explicitly states that the following snippet is > guaranteed to succeed (S 4.1.11.2): > > pc.createOffer(function(offer) { > pc.setLocalDescription("offer", offer); > }); > > > Now consider the following snippet: > > pc.createOffer(function(offer) { > setTimeout(function() { > pc.setLocalDescription("offer", offer); > }, 1000); > }); > > The spec suggests that this is not guaranteed to succeed, but is it > reasonable for the application programmer to expect it to > succeed? Phrased differently, would an implementation which refused > any setLocalDescription() outside of the createOffer() callback > even if no other conditions had changed be conformant? I would regard it as conformant, but not likely to be popular. Similarly, I would regard an implementation that always rejected this: pc.createOffer(function(offer) { offer.makeSomeReasonableTweakToTheSDP() pc.setLocalDescription("offer", offer); }); as conformant, but not likely to be popular. I don't see how to easily define conformance (in "always" / MUST terms) in a way substantially different from "before anything else executes" and "without any changes to the SDP". There may be ways to define what a "reasonable SDP change" and a "reasonable expectation of later success" is - once we can write tests for them, I'd like to investigate those.
Received on Monday, 4 June 2012 03:22:50 UTC