Bug 1286744 - Return the empty string from GetAllResponseHeaders() if the XHR failed. r=smaug
--- a/dom/xhr/XMLHttpRequestMainThread.cpp
+++ b/dom/xhr/XMLHttpRequestMainThread.cpp
@@ -1133,16 +1133,20 @@ XMLHttpRequestMainThread::GetAllResponse
aResponseHeaders.Truncate();
// If the state is UNSENT or OPENED,
// return the empty string and terminate these steps.
if (mState == State::unsent || mState == State::opened) {
return;
}
+ if (mErrorLoad) {
+ return;
+ }
+
if (nsCOMPtr<nsIHttpChannel> httpChannel = GetCurrentHttpChannel()) {
RefPtr<nsHeaderVisitor> visitor =
new nsHeaderVisitor(*this, WrapNotNull(httpChannel));
if (NS_SUCCEEDED(httpChannel->VisitResponseHeaders(visitor))) {
aResponseHeaders = visitor->Headers();
}
return;
}
deleted file mode 100644
--- a/testing/web-platform/meta/XMLHttpRequest/xmlhttprequest-network-error.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[xmlhttprequest-network-error.htm]
- type: testharness
- [XMLHttpRequest: members during network errors]
- expected: FAIL
-