浏览代码

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 7 年之前
父节点
当前提交
38d729c414
共有 1 个文件被更改,包括 1 次插入16 次删除
  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