Bug 1284680 - add a temporary permission for chrome code in webrtcUI.jsm
MozReview-Commit-ID: 7TAW0xeEhZL
--- a/browser/modules/webrtcUI.jsm
+++ b/browser/modules/webrtcUI.jsm
@@ -504,16 +504,22 @@ function prompt(aBrowser, aRequest) {
let deviceId = event.target.deviceId;
if (deviceId == undefined) {
chromeDoc.getElementById("webRTC-preview").hidden = true;
return;
}
let constraints = { video: { mediaSource: type, deviceId: {exact: deviceId } } };
let chromeWin = chromeDoc.defaultView;
+
+ let perms = Services.perms;
+ let chromeUri = Services.io.newURI(chromeDoc.location.href, null, null);
+ perms.add(chromeUri, "MediaManagerVideo", perms.ALLOW_ACTION,
+ perms.EXPIRE_SESSION);
+
chromeWin.navigator.mediaDevices.getUserMedia(constraints).then(stream => {
let video = chromeDoc.getElementById("webRTC-previewVideo");
video.src = chromeWin.URL.createObjectURL(stream);
chromeDoc.getElementById("webRTC-preview").hidden = false;
video.onloadedmetadata = function(e) {
video.play();
};
}).catch(err => dump('err = ' + err + '\n'));