| Index: Source/modules/fetch/FetchResponseData.cpp
|
| diff --git a/Source/modules/fetch/FetchResponseData.cpp b/Source/modules/fetch/FetchResponseData.cpp
|
| index 4c5cac22455a9c501c5f6d0a8a9c431e2fadadfe..578193d1f4985436f71fa92088042547e718bdda 100644
|
| --- a/Source/modules/fetch/FetchResponseData.cpp
|
| +++ b/Source/modules/fetch/FetchResponseData.cpp
|
| @@ -36,6 +36,9 @@ WebServiceWorkerResponseType fetchTypeToWebType(FetchResponseData::Type fetchTyp
|
| case FetchResponseData::OpaqueType:
|
| webType = WebServiceWorkerResponseTypeOpaque;
|
| break;
|
| + case FetchResponseData::OpaqueRedirectType:
|
| + webType = WebServiceWorkerResponseTypeOpaqueRedirect;
|
| + break;
|
| }
|
| return webType;
|
| }
|
| @@ -120,6 +123,17 @@ FetchResponseData* FetchResponseData::createOpaqueFilteredResponse()
|
| return response;
|
| }
|
|
|
| +FetchResponseData* FetchResponseData::createOpaqueRedirectFilteredResponse()
|
| +{
|
| + // "An opaque-redirect filtered response is a filtered response whose type
|
| + // is |opaqueredirect|, status is 0, status message is the empty byte
|
| + // sequence, header list is the empty list, body is null, and cache state is
|
| + // |none|.
|
| + FetchResponseData* response = new FetchResponseData(OpaqueRedirectType, 0, "");
|
| + response->m_internalResponse = this;
|
| + return response;
|
| +}
|
| +
|
| String FetchResponseData::mimeType() const
|
| {
|
| return m_mimeType;
|
| @@ -183,6 +197,7 @@ FetchResponseData* FetchResponseData::clone(ExecutionContext* executionContext)
|
| ASSERT(!m_buffer->hasBody());
|
| break;
|
| case OpaqueType:
|
| + case OpaqueRedirectType:
|
| ASSERT(m_internalResponse);
|
| ASSERT(!m_buffer->hasBody());
|
| ASSERT(m_internalResponse->m_type == DefaultType);
|
|
|