ソースを参照

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