diff options
Diffstat (limited to 'Source/WebKit/win/WebDataSource.cpp')
-rw-r--r-- | Source/WebKit/win/WebDataSource.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Source/WebKit/win/WebDataSource.cpp b/Source/WebKit/win/WebDataSource.cpp index 1498f6e5f..89f83ab64 100644 --- a/Source/WebKit/win/WebDataSource.cpp +++ b/Source/WebKit/win/WebDataSource.cpp @@ -44,6 +44,7 @@ #include <WebCore/Frame.h> #include <WebCore/FrameLoader.h> #include <WebCore/KURL.h> +#include <WebCore/ResourceBuffer.h> using namespace WebCore; @@ -179,7 +180,8 @@ HRESULT STDMETHODCALLTYPE WebDataSource::data( if (!m_loader) return E_FAIL; - return MemoryStream::createInstance(m_loader->mainResourceData()).copyRefTo(stream); + RefPtr<ResourceBuffer> buffer = m_loader->mainResourceData(); + return MemoryStream::createInstance(buffer ? buffer->sharedBuffer() : 0).copyRefTo(stream); } HRESULT STDMETHODCALLTYPE WebDataSource::representation( @@ -302,7 +304,8 @@ HRESULT STDMETHODCALLTYPE WebDataSource::subresourceForURL( if (!cachedResource) return E_FAIL; - *resource = WebResource::createInstance(cachedResource->data(), cachedResource->response()); + ResourceBuffer* buffer = cachedResource->resourceBuffer(); + *resource = WebResource::createInstance(buffer ? buffer->sharedBuffer() : 0, cachedResource->response()); return S_OK; } |