Browse Source

Merge pull request #6473 from Snuffleupagus/bug-1165272

Upstream the changes from Bug 1165272 - unify Get*CodebasePrincipal with createCodebasePrincipal in nsIScriptSecurityManager
Yury Delendik 10 years ago
parent
commit
82f73dfed5
  1. 21
      extensions/firefox/content/PdfStreamConverter.jsm

21
extensions/firefox/content/PdfStreamConverter.jsm

@ -1055,14 +1055,25 @@ PdfStreamConverter.prototype = {
// We can use resource principal when data is fetched by the chrome // We can use resource principal when data is fetched by the chrome
// e.g. useful for NoScript // e.g. useful for NoScript
var securityManager = Cc['@mozilla.org/scriptsecuritymanager;1'] var ssm = Cc['@mozilla.org/scriptsecuritymanager;1']
.getService(Ci.nsIScriptSecurityManager); .getService(Ci.nsIScriptSecurityManager);
var uri = NetUtil.newURI(PDF_VIEWER_WEB_PAGE, null, null); var uri = NetUtil.newURI(PDF_VIEWER_WEB_PAGE, null, null);
var resourcePrincipal;
//#if MOZCENTRAL
resourcePrincipal = ssm.createCodebasePrincipal(uri, {});
//#else
// FF16 and below had getCodebasePrincipal, it was replaced by // FF16 and below had getCodebasePrincipal, it was replaced by
// getNoAppCodebasePrincipal (bug 758258). // getNoAppCodebasePrincipal (bug 758258).
var resourcePrincipal = 'getNoAppCodebasePrincipal' in securityManager ? // FF43 then replaced getNoAppCodebasePrincipal with
securityManager.getNoAppCodebasePrincipal(uri) : // createCodebasePrincipal (bug 1165272).
securityManager.getCodebasePrincipal(uri); if ('createCodebasePrincipal' in ssm) {
resourcePrincipal = ssm.createCodebasePrincipal(uri, {});
} else if ('getNoAppCodebasePrincipal' in ssm) {
resourcePrincipal = ssm.getNoAppCodebasePrincipal(uri);
} else {
resourcePrincipal = ssm.getCodebasePrincipal(uri);
}
//#endif
aRequest.owner = resourcePrincipal; aRequest.owner = resourcePrincipal;
channel.asyncOpen(proxy, aContext); channel.asyncOpen(proxy, aContext);
}, },

Loading…
Cancel
Save