Index: inject.preload.js |
diff --git a/inject.preload.js b/inject.preload.js |
index ce6912136372870d2e7c3510994e6e05c3198984..f5e1d476b31d65cb783005344c59e4710ed03f3b 100644 |
--- a/inject.preload.js |
+++ b/inject.preload.js |
@@ -174,8 +174,9 @@ function injected(eventName, injectedIntoContentWindow) |
{ |
for (let name of properties) |
{ |
- Object.defineProperty(dest, name, |
- Object.getOwnPropertyDescriptor(src, name)); |
+ let descriptor = Object.getOwnPropertyDescriptor(src, name); |
+ if (descriptor) |
+ Object.defineProperty(dest, name, descriptor); |
} |
} |
@@ -358,11 +359,17 @@ function injected(eventName, injectedIntoContentWindow) |
if (!(this instanceof WrappedRTCPeerConnection)) |
return WrappedRTCPeerConnection(); |
+ |
let configuration = protectConfiguration(args[0]); |
+ |
// Since the old webkitRTCPeerConnection constructor takes an optional |
// second argument we need to take care to pass that through. Necessary |
// for older versions of Chrome such as 49. |
- let peerconnection = new RealRTCPeerConnection(configuration, args[1]); |
+ let constraints = undefined; |
+ if (args.length > 1) |
+ constraints = args[1]; |
+ |
+ let peerconnection = new RealRTCPeerConnection(configuration, constraints); |
checkConfiguration(peerconnection, configuration); |
return peerconnection; |
} |