mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
926369bebb
This stuff is broken in a bunch of ways. The test isn't doing the right thing because it's using SpecialPowers. When we pass the content object to xpconnectArgument(), it gets wrapped in a SpecialPowers wrapper, so the check succeeds, only to fail down the line when the QI method is actually invoked with an IID (which we can't pass to content scopes anyway). This whole security check is probably useless given the above, but let's be safe, make it a bit more robust, and fix up the test while we're at it.
31 lines
1.2 KiB
XML
31 lines
1.2 KiB
XML
<?xml version="1.0"?>
|
|
<?xml-stylesheet type="text/css" href="chrome://global/skin"?>
|
|
<?xml-stylesheet type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"?>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=503926
|
|
-->
|
|
<window title="Mozilla Bug 503926"
|
|
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
|
<!-- test results are displayed in the html:body -->
|
|
<body xmlns="http://www.w3.org/1999/xhtml">
|
|
<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=503926"
|
|
target="_blank">Mozilla Bug 503926</a>
|
|
</body>
|
|
|
|
<!-- test code goes here -->
|
|
<script type="application/javascript">
|
|
<![CDATA[
|
|
var gWindowUtils = window.QueryInterface(Components.interfaces.nsIInterfaceRequestor).
|
|
getInterface(Components.interfaces.nsIDOMWindowUtils);
|
|
var passed = false;
|
|
var obj = { QueryInterface: function() { passed = true; } }
|
|
gWindowUtils.xpconnectArgument(obj);
|
|
var isDialog = location.hash != '#iframe';
|
|
var outer = XPCNativeWrapper.unwrap(isDialog ? opener : parent);
|
|
outer.ok(passed, "chrome/chrome test passed: " + (isDialog ? "dialog" : "iframe"));
|
|
if (isDialog)
|
|
close();
|
|
]]>
|
|
</script>
|
|
</window>
|