Chromium Code Reviews| Index: Source/modules/serviceworkers/FetchResponseData.cpp |
| diff --git a/Source/modules/serviceworkers/FetchResponseData.cpp b/Source/modules/serviceworkers/FetchResponseData.cpp |
| index df4cc1e09bb44cefc8b9b40f72064db463c8a439..54c59d1fc4d20e59c6c58b8a2eed38091e242afb 100644 |
| --- a/Source/modules/serviceworkers/FetchResponseData.cpp |
| +++ b/Source/modules/serviceworkers/FetchResponseData.cpp |
| @@ -82,10 +82,34 @@ FetchResponseData* FetchResponseData::createOpaqueFilteredResponse() |
| void FetchResponseData::populateWebServiceWorkerResponse(WebServiceWorkerResponse& response) |
| { |
| - if (m_internalResponse) { |
| + if (m_internalResponse) |
| m_internalResponse->populateWebServiceWorkerResponse(response); |
| - return; |
| + |
| + WebServiceWorkerResponse::ResponseType type = WebServiceWorkerResponse::DefaultType; |
| + switch (m_type) { |
| + case BasicType: |
| + type = WebServiceWorkerResponse::BasicType; |
| + break; |
| + case CORSType: |
| + type = WebServiceWorkerResponse::CORSType; |
| + break; |
| + case DefaultType: |
| + type = WebServiceWorkerResponse::DefaultType; |
| + break; |
| + case ErrorType: |
| + type = WebServiceWorkerResponse::ErrorType; |
| + break; |
| + case OpaqueType: |
| + type = WebServiceWorkerResponse::OpaqueType; |
| + break; |
| } |
| + |
| + // Note that this overrides any internal response's type. |
| + response.setResponseType(type); |
| + |
| + if (m_internalResponse) |
|
jsbell
2014/09/30 22:14:44
Splitting up the m_internalResponse logic (populat
jkarlin
2014/10/01 00:11:00
Done.
|
| + return; |
| + |
| response.setURL(url()); |
| response.setStatus(status()); |
| response.setStatusText(statusMessage()); |