Explorar o código

remove onnegotiationneeded

stops using onnegotiationneeded to create an offer.
This is wrong in the case of the answering peer and gets
triggered twice in Chrome due to bugs
Philipp Hancke %!s(int64=7) %!d(string=hai) anos
pai
achega
38d729c414
Modificáronse 1 ficheiros con 1 adicións e 16 borrados
  1. 1 16
      lib/negotiator.js

+ 1 - 16
lib/negotiator.js

@@ -48,9 +48,7 @@ Negotiator.startConnection = function(connection, options) {
       connection.initialize(dc);
     }
 
-    if (!util.supports.onnegotiationneeded) {
-      Negotiator._makeOffer(connection);
-    }
+    Negotiator._makeOffer(connection);
   } else {
     Negotiator.handleSDP("OFFER", connection, options.sdp);
   }
@@ -175,19 +173,6 @@ Negotiator._setupListeners = function(connection, pc, pc_id) {
   // Fallback for older Chrome impls.
   pc.onicechange = pc.oniceconnectionstatechange;
 
-  // ONNEGOTIATIONNEEDED (Chrome)
-  util.log("Listening for `negotiationneeded`");
-  pc.onnegotiationneeded = function() {
-    util.log("`negotiationneeded` triggered");
-    if (pc.signalingState == "stable") {
-      Negotiator._makeOffer(connection);
-    } else {
-      util.log(
-        "onnegotiationneeded triggered when not stable. Is another connection being established?"
-      );
-    }
-  };
-
   // DATACONNECTION.
   util.log("Listening for data channel");
   // Fired between offer and answer, so options should already be saved