| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2004, 2006, 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2004, 2006, 2008 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2005-2007 Alexey Proskuryakov <ap@webkit.org> | 3 * Copyright (C) 2005-2007 Alexey Proskuryakov <ap@webkit.org> |
| 4 * Copyright (C) 2007, 2008 Julien Chaffraix <jchaffraix@webkit.org> | 4 * Copyright (C) 2007, 2008 Julien Chaffraix <jchaffraix@webkit.org> |
| 5 * Copyright (C) 2008, 2011 Google Inc. All rights reserved. | 5 * Copyright (C) 2008, 2011 Google Inc. All rights reserved. |
| 6 * Copyright (C) 2012 Intel Corporation | 6 * Copyright (C) 2012 Intel Corporation |
| 7 * | 7 * |
| 8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
| 9 * modify it under the terms of the GNU Lesser General Public | 9 * modify it under the terms of the GNU Lesser General Public |
| 10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
| (...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 184 } | 184 } |
| 185 | 185 |
| 186 Member<XMLHttpRequest> m_xhr; | 186 Member<XMLHttpRequest> m_xhr; |
| 187 FileReaderLoader m_loader; | 187 FileReaderLoader m_loader; |
| 188 }; | 188 }; |
| 189 | 189 |
| 190 XMLHttpRequest* XMLHttpRequest::create(ScriptState* scriptState) | 190 XMLHttpRequest* XMLHttpRequest::create(ScriptState* scriptState) |
| 191 { | 191 { |
| 192 ExecutionContext* context = scriptState->executionContext(); | 192 ExecutionContext* context = scriptState->executionContext(); |
| 193 DOMWrapperWorld& world = scriptState->world(); | 193 DOMWrapperWorld& world = scriptState->world(); |
| 194 RefPtr<SecurityOrigin> securityOrigin = world.isIsolatedWorld() ? world.isol
atedWorldSecurityOrigin() : nullptr; | 194 RefPtr<SecurityOrigin> isolatedWorldSecurityOrigin = world.isIsolatedWorld()
? world.isolatedWorldSecurityOrigin() : nullptr; |
| 195 XMLHttpRequest* xmlHttpRequest = new XMLHttpRequest(context, securityOrigin)
; | 195 XMLHttpRequest* xmlHttpRequest = new XMLHttpRequest(context, isolatedWorldSe
curityOrigin); |
| 196 xmlHttpRequest->suspendIfNeeded(); | 196 xmlHttpRequest->suspendIfNeeded(); |
| 197 | 197 |
| 198 return xmlHttpRequest; | 198 return xmlHttpRequest; |
| 199 } | 199 } |
| 200 | 200 |
| 201 XMLHttpRequest* XMLHttpRequest::create(ExecutionContext* context) | 201 XMLHttpRequest* XMLHttpRequest::create(ExecutionContext* context) |
| 202 { | 202 { |
| 203 XMLHttpRequest* xmlHttpRequest = new XMLHttpRequest(context, nullptr); | 203 XMLHttpRequest* xmlHttpRequest = new XMLHttpRequest(context, nullptr); |
| 204 xmlHttpRequest->suspendIfNeeded(); | 204 xmlHttpRequest->suspendIfNeeded(); |
| 205 | 205 |
| 206 return xmlHttpRequest; | 206 return xmlHttpRequest; |
| 207 } | 207 } |
| 208 | 208 |
| 209 XMLHttpRequest::XMLHttpRequest(ExecutionContext* context, PassRefPtr<SecurityOri
gin> securityOrigin) | 209 XMLHttpRequest::XMLHttpRequest(ExecutionContext* context, PassRefPtr<SecurityOri
gin> isolatedWorldSecurityOrigin) |
| 210 : ActiveDOMObject(context) | 210 : ActiveDOMObject(context) |
| 211 , m_timeoutMilliseconds(0) | 211 , m_timeoutMilliseconds(0) |
| 212 , m_state(UNSENT) | 212 , m_state(UNSENT) |
| 213 , m_lengthDownloadedToFile(0) | 213 , m_lengthDownloadedToFile(0) |
| 214 , m_receivedLength(0) | 214 , m_receivedLength(0) |
| 215 , m_exceptionCode(0) | 215 , m_exceptionCode(0) |
| 216 , m_progressEventThrottle(XMLHttpRequestProgressEventThrottle::create(this)) | 216 , m_progressEventThrottle(XMLHttpRequestProgressEventThrottle::create(this)) |
| 217 , m_responseTypeCode(ResponseTypeDefault) | 217 , m_responseTypeCode(ResponseTypeDefault) |
| 218 , m_securityOrigin(securityOrigin) | 218 , m_isolatedWorldSecurityOrigin(isolatedWorldSecurityOrigin) |
| 219 , m_eventDispatchRecursionLevel(0) | 219 , m_eventDispatchRecursionLevel(0) |
| 220 , m_async(true) | 220 , m_async(true) |
| 221 , m_includeCredentials(false) | 221 , m_includeCredentials(false) |
| 222 , m_parsedResponse(false) | 222 , m_parsedResponse(false) |
| 223 , m_error(false) | 223 , m_error(false) |
| 224 , m_uploadEventsAllowed(true) | 224 , m_uploadEventsAllowed(true) |
| 225 , m_uploadComplete(false) | 225 , m_uploadComplete(false) |
| 226 , m_sameOriginRequest(true) | 226 , m_sameOriginRequest(true) |
| 227 , m_downloadingToFile(false) | 227 , m_downloadingToFile(false) |
| 228 , m_responseTextOverflow(false) | 228 , m_responseTextOverflow(false) |
| (...skipping 10 matching lines...) Expand all Loading... |
| 239 } | 239 } |
| 240 | 240 |
| 241 Document* XMLHttpRequest::document() const | 241 Document* XMLHttpRequest::document() const |
| 242 { | 242 { |
| 243 ASSERT(executionContext()->isDocument()); | 243 ASSERT(executionContext()->isDocument()); |
| 244 return toDocument(executionContext()); | 244 return toDocument(executionContext()); |
| 245 } | 245 } |
| 246 | 246 |
| 247 SecurityOrigin* XMLHttpRequest::securityOrigin() const | 247 SecurityOrigin* XMLHttpRequest::securityOrigin() const |
| 248 { | 248 { |
| 249 return m_securityOrigin ? m_securityOrigin.get() : executionContext()->secur
ityOrigin(); | 249 return m_isolatedWorldSecurityOrigin ? m_isolatedWorldSecurityOrigin.get() :
executionContext()->securityOrigin(); |
| 250 } | 250 } |
| 251 | 251 |
| 252 XMLHttpRequest::State XMLHttpRequest::readyState() const | 252 XMLHttpRequest::State XMLHttpRequest::readyState() const |
| 253 { | 253 { |
| 254 return m_state; | 254 return m_state; |
| 255 } | 255 } |
| 256 | 256 |
| 257 ScriptString XMLHttpRequest::responseText(ExceptionState& exceptionState) | 257 ScriptString XMLHttpRequest::responseText(ExceptionState& exceptionState) |
| 258 { | 258 { |
| 259 if (m_responseTypeCode != ResponseTypeDefault && m_responseTypeCode != Respo
nseTypeText) { | 259 if (m_responseTypeCode != ResponseTypeDefault && m_responseTypeCode != Respo
nseTypeText) { |
| (...skipping 626 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 886 // added after the request is started. | 886 // added after the request is started. |
| 887 m_uploadEventsAllowed = m_sameOriginRequest || uploadEvents || !FetchUtils::
isSimpleRequest(m_method, m_requestHeaders); | 887 m_uploadEventsAllowed = m_sameOriginRequest || uploadEvents || !FetchUtils::
isSimpleRequest(m_method, m_requestHeaders); |
| 888 | 888 |
| 889 ASSERT(executionContext()); | 889 ASSERT(executionContext()); |
| 890 ExecutionContext& executionContext = *this->executionContext(); | 890 ExecutionContext& executionContext = *this->executionContext(); |
| 891 | 891 |
| 892 ResourceRequest request(m_url); | 892 ResourceRequest request(m_url); |
| 893 request.setHTTPMethod(m_method); | 893 request.setHTTPMethod(m_method); |
| 894 request.setRequestContext(WebURLRequest::RequestContextXMLHttpRequest); | 894 request.setRequestContext(WebURLRequest::RequestContextXMLHttpRequest); |
| 895 request.setFetchCredentialsMode(m_includeCredentials ? WebURLRequest::FetchC
redentialsModeInclude : WebURLRequest::FetchCredentialsModeSameOrigin); | 895 request.setFetchCredentialsMode(m_includeCredentials ? WebURLRequest::FetchC
redentialsModeInclude : WebURLRequest::FetchCredentialsModeSameOrigin); |
| 896 request.setSkipServiceWorker(m_isolatedWorldSecurityOrigin); |
| 896 | 897 |
| 897 InspectorInstrumentation::willLoadXHR(&executionContext, this, this, m_metho
d, m_url, m_async, httpBody ? httpBody->deepCopy() : nullptr, m_requestHeaders,
m_includeCredentials); | 898 InspectorInstrumentation::willLoadXHR(&executionContext, this, this, m_metho
d, m_url, m_async, httpBody ? httpBody->deepCopy() : nullptr, m_requestHeaders,
m_includeCredentials); |
| 898 | 899 |
| 899 if (httpBody) { | 900 if (httpBody) { |
| 900 ASSERT(m_method != "GET"); | 901 ASSERT(m_method != "GET"); |
| 901 ASSERT(m_method != "HEAD"); | 902 ASSERT(m_method != "HEAD"); |
| 902 request.setHTTPBody(httpBody); | 903 request.setHTTPBody(httpBody); |
| 903 } | 904 } |
| 904 | 905 |
| 905 if (m_requestHeaders.size() > 0) | 906 if (m_requestHeaders.size() > 0) |
| (...skipping 809 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1715 visitor->trace(m_responseDocumentParser); | 1716 visitor->trace(m_responseDocumentParser); |
| 1716 visitor->trace(m_progressEventThrottle); | 1717 visitor->trace(m_progressEventThrottle); |
| 1717 visitor->trace(m_upload); | 1718 visitor->trace(m_upload); |
| 1718 visitor->trace(m_blobLoader); | 1719 visitor->trace(m_blobLoader); |
| 1719 XMLHttpRequestEventTarget::trace(visitor); | 1720 XMLHttpRequestEventTarget::trace(visitor); |
| 1720 DocumentParserClient::trace(visitor); | 1721 DocumentParserClient::trace(visitor); |
| 1721 ActiveDOMObject::trace(visitor); | 1722 ActiveDOMObject::trace(visitor); |
| 1722 } | 1723 } |
| 1723 | 1724 |
| 1724 } // namespace blink | 1725 } // namespace blink |
| OLD | NEW |