| Index: Source/modules/serviceworkers/Response.cpp
|
| diff --git a/Source/modules/serviceworkers/Response.cpp b/Source/modules/serviceworkers/Response.cpp
|
| index b12be8c26201e07ba676c13a23ccbe0a9390c58a..cd41cffba78a7d8c8e8517928c558dba7a5d710b 100644
|
| --- a/Source/modules/serviceworkers/Response.cpp
|
| +++ b/Source/modules/serviceworkers/Response.cpp
|
| @@ -12,6 +12,8 @@
|
| #include "modules/serviceworkers/ResponseInit.h"
|
| #include "public/platform/WebServiceWorkerResponse.h"
|
| #include "wtf/ArrayBuffer.h"
|
| +#include "wtf/ArrayBufferView.h"
|
| +#include "wtf/RefPtr.h"
|
|
|
| namespace blink {
|
|
|
| @@ -70,6 +72,15 @@ Response* Response::create(const ArrayBuffer* body, const Dictionary& responseIn
|
| return create(blob.get(), ResponseInit(responseInit), exceptionState);
|
| }
|
|
|
| +Response* Response::create(const ArrayBufferView* body, const Dictionary& responseInit, ExceptionState& exceptionState)
|
| +{
|
| + OwnPtr<BlobData> blobData = BlobData::create();
|
| + blobData->appendArrayBufferView(body);
|
| + const long long length = blobData->length();
|
| + RefPtrWillBeRawPtr<Blob> blob = Blob::create(BlobDataHandle::create(blobData.release(), length));
|
| + return create(blob.get(), ResponseInit(responseInit), exceptionState);
|
| +}
|
| +
|
| Response* Response::create(Blob* body, const ResponseInit& responseInit, ExceptionState& exceptionState)
|
| {
|
| // "1. If |init|'s status member is not in the range 200 to 599, throw a
|
|
|