summaryrefslogtreecommitdiffstats
path: root/browser/modules
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@gmail.com>2018-03-18 10:56:28 +0100
committerwolfbeast <mcwerewolf@gmail.com>2018-03-18 10:56:28 +0100
commit912aa47acf658ae26ac24bb3f6ca52b04919f2ee (patch)
treefd551c51c78df5ab60db9c97d2e5deb90aa4ff75 /browser/modules
parenta24511ca8e19afe4d19008ba903e1edab0af3223 (diff)
parentea1b2e81e4c092a3b871bed49e907fba20483bdc (diff)
downloadUXP-912aa47acf658ae26ac24bb3f6ca52b04919f2ee.tar
UXP-912aa47acf658ae26ac24bb3f6ca52b04919f2ee.tar.gz
UXP-912aa47acf658ae26ac24bb3f6ca52b04919f2ee.tar.lz
UXP-912aa47acf658ae26ac24bb3f6ca52b04919f2ee.tar.xz
UXP-912aa47acf658ae26ac24bb3f6ca52b04919f2ee.zip
Merge branch 'ported-upstream'
Diffstat (limited to 'browser/modules')
-rw-r--r--browser/modules/ContentWebRTC.jsm1
-rw-r--r--browser/modules/webrtcUI.jsm8
2 files changed, 8 insertions, 1 deletions
diff --git a/browser/modules/ContentWebRTC.jsm b/browser/modules/ContentWebRTC.jsm
index bfb98a868..fd50176a0 100644
--- a/browser/modules/ContentWebRTC.jsm
+++ b/browser/modules/ContentWebRTC.jsm
@@ -208,6 +208,7 @@ function prompt(aContentWindow, aWindowID, aCallID, aConstraints, aDevices, aSec
let request = {
callID: aCallID,
windowID: aWindowID,
+ origin: aContentWindow.origin,
documentURI: aContentWindow.document.documentURI,
secure: aSecure,
requestTypes: requestTypes,
diff --git a/browser/modules/webrtcUI.jsm b/browser/modules/webrtcUI.jsm
index b24135bfc..08de46bb3 100644
--- a/browser/modules/webrtcUI.jsm
+++ b/browser/modules/webrtcUI.jsm
@@ -290,7 +290,13 @@ function prompt(aBrowser, aRequest) {
let {audioDevices: audioDevices, videoDevices: videoDevices,
sharingScreen: sharingScreen, sharingAudio: sharingAudio,
requestTypes: requestTypes} = aRequest;
- let uri = Services.io.newURI(aRequest.documentURI, null, null);
+ let uri;
+ try {
+ // This fails for principals that serialize to "null", e.g. file URIs.
+ uri = Services.io.newURI(aRequest.origin, null, null);
+ } catch (e) {
+ uri = Services.io.newURI(aRequest.documentURI, null, null);
+ }
let host = getHost(uri);
let chromeDoc = aBrowser.ownerDocument;
let chromeWin = chromeDoc.defaultView;