Bug 818281 - Remove DOMClassInfo remnants from XMLHttpRequest. r=bz

This commit is contained in:
Masatoshi Kimura 2012-12-16 19:57:12 -05:00
parent 543195e721
commit 816f18b1f1
7 changed files with 10 additions and 72 deletions

View File

@ -371,11 +371,8 @@ nsXHREventTarget::DisconnectFromOwner()
/////////////////////////////////////////////
DOMCI_DATA(XMLHttpRequestUpload, nsXMLHttpRequestUpload)
NS_INTERFACE_MAP_BEGIN(nsXMLHttpRequestUpload)
NS_INTERFACE_MAP_ENTRY(nsIXMLHttpRequestUpload)
NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO(XMLHttpRequestUpload)
NS_INTERFACE_MAP_END_INHERITING(nsXHREventTarget)
NS_IMPL_ADDREF_INHERITED(nsXMLHttpRequestUpload, nsXHREventTarget)
@ -633,8 +630,6 @@ NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(nsXMLHttpRequest,
NS_IMPL_CYCLE_COLLECTION_TRACE_JSVAL_MEMBER_CALLBACK(mResultJSON)
NS_IMPL_CYCLE_COLLECTION_TRACE_END
DOMCI_DATA(XMLHttpRequest, nsXMLHttpRequest)
// QueryInterface implementation for nsXMLHttpRequest
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsXMLHttpRequest)
NS_INTERFACE_MAP_ENTRY(nsIXMLHttpRequest)
@ -647,7 +642,6 @@ NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsXMLHttpRequest)
NS_INTERFACE_MAP_ENTRY(nsISupportsWeakReference)
NS_INTERFACE_MAP_ENTRY(nsIJSNativeInitializer)
NS_INTERFACE_MAP_ENTRY(nsITimerCallback)
NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO(XMLHttpRequest)
NS_INTERFACE_MAP_END_INHERITING(nsXHREventTarget)
NS_IMPL_ADDREF_INHERITED(nsXMLHttpRequest, nsXHREventTarget)

View File

@ -171,8 +171,8 @@ for (var largeLength = 0; largeLength < (0x0000FFFF + 2); ++largeLength) {
large += "A";
}
const XHR = SpecialPowers.Ci.nsIXMLHttpRequest;
const UPLOAD = SpecialPowers.Ci.nsIXMLHttpRequestUpload;
const XHR = XMLHttpRequest;
const UPLOAD = XMLHttpRequestUpload;
var tests =
[

View File

@ -1382,8 +1382,6 @@ static nsDOMClassInfoData sClassInfoData[] = {
NS_DEFINE_CLASSINFO_DATA(XMLHttpProgressEvent, nsDOMGenericSH,
DOM_DEFAULT_SCRIPTABLE_FLAGS)
NS_DEFINE_CLASSINFO_DATA(XMLHttpRequest, nsEventTargetSH,
EVENTTARGET_SCRIPTABLE_FLAGS)
NS_DEFINE_CLASSINFO_DATA(EventSource, nsEventTargetSH,
EVENTTARGET_SCRIPTABLE_FLAGS)
@ -1512,9 +1510,6 @@ static nsDOMClassInfoData sClassInfoData[] = {
DOM_DEFAULT_SCRIPTABLE_FLAGS)
#endif
NS_DEFINE_CLASSINFO_DATA(XMLHttpRequestUpload, nsEventTargetSH,
EVENTTARGET_SCRIPTABLE_FLAGS)
// DOM Traversal NodeIterator class
NS_DEFINE_CLASSINFO_DATA(NodeIterator, nsDOMGenericSH,
DOM_DEFAULT_SCRIPTABLE_FLAGS)
@ -3866,14 +3861,6 @@ nsDOMClassInfo::Init()
DOM_CLASSINFO_MAP_ENTRY(nsIDOMToString)
DOM_CLASSINFO_MAP_END
DOM_CLASSINFO_MAP_BEGIN(XMLHttpRequest, nsIXMLHttpRequest)
DOM_CLASSINFO_MAP_ENTRY(nsIXMLHttpRequest)
DOM_CLASSINFO_MAP_ENTRY(nsIJSXMLHttpRequest)
DOM_CLASSINFO_MAP_ENTRY(nsIXMLHttpRequestEventTarget)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMEventTarget)
DOM_CLASSINFO_MAP_ENTRY(nsIInterfaceRequestor)
DOM_CLASSINFO_MAP_END
DOM_CLASSINFO_MAP_BEGIN_NO_CLASS_IF(XMLHttpProgressEvent, nsIDOMEvent)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMLSProgressEvent)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMProgressEvent)
@ -4089,12 +4076,6 @@ nsDOMClassInfo::Init()
DOM_CLASSINFO_MAP_END
#endif
DOM_CLASSINFO_MAP_BEGIN(XMLHttpRequestUpload, nsIXMLHttpRequestUpload)
DOM_CLASSINFO_MAP_ENTRY(nsIXMLHttpRequestEventTarget)
DOM_CLASSINFO_MAP_ENTRY(nsIXMLHttpRequestUpload)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMEventTarget)
DOM_CLASSINFO_MAP_END
DOM_CLASSINFO_MAP_BEGIN(DataTransfer, nsIDOMDataTransfer)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMDataTransfer)
DOM_CLASSINFO_MAP_END

View File

@ -334,7 +334,6 @@ DOMCI_CLASS(StorageItem)
// XMLHttpRequest
DOMCI_CLASS(XMLHttpProgressEvent)
DOMCI_CLASS(XMLHttpRequest)
// Server-sent events
DOMCI_CLASS(EventSource)
@ -413,8 +412,6 @@ DOMCI_CLASS(MediaStream)
DOMCI_CLASS(LocalMediaStream)
#endif
DOMCI_CLASS(XMLHttpRequestUpload)
// DOM Traversal NodeIterator class
DOMCI_CLASS(NodeIterator)

View File

@ -22,7 +22,6 @@ MOCHITEST_FILES = \
file_bug291653.html \
test_bug291653.html \
test_bug308856.html \
test_bug317448.html \
test_bug327891.html \
test_bug333983.html \
test_bug335976.xhtml \

View File

@ -1,41 +0,0 @@
<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=317448
-->
<head>
<title>Test for Bug 317448</title>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=317448">Mozilla Bug 317448</a>
<p id="display"></p>
<div id="content" style="display: none">
</div>
<pre id="test">
<script class="testbody" type="text/javascript">
/** Test for Bug 317448 **/
var x = new XMLHttpRequest();
x.open("GET", document.location.href);
x.send("");
is(x instanceof SpecialPowers.Ci.nsIInterfaceRequestor,
true, "Must be interface requestor");
var count = {};
var interfaces = SpecialPowers.wrap(x).
QueryInterface(SpecialPowers.Ci.nsIClassInfo).
getInterfaces(count).
map(function(id) {
id = SpecialPowers.wrap(id);
return SpecialPowers.wrap(SpecialPowers.Components).interfacesByID[id].toString();
});
isnot(interfaces.indexOf("nsIInterfaceRequestor"), "-1",
"Must have interface requestor classinfo");
</script>
</pre>
</body>
</html>

View File

@ -72,6 +72,14 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=500931
var contentXHR = XPCNativeWrapper(win.wrappedJSObject.xhr);
try {
var QIed = contentXHR.QueryInterface(Components.interfaces.nsIClassInfo);
ok(false, "Should throw for new binding objects not having classinfo");
} catch(e) {
ok(true, "Threw while QI-ing on wrapper");
}
var contentScreen = XPCNativeWrapper(win.wrappedJSObject.screen);
try {
var QIed = contentScreen.QueryInterface(Components.interfaces.nsIClassInfo);
ok(QIed, "Successfully QI-ed on wrapper");
} catch(e) {
ok(false, "Threw while QI-ing on wrapper");