summaryrefslogtreecommitdiff
path: root/Source/WebKit/win/WebDataSource.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit/win/WebDataSource.cpp')
-rw-r--r--Source/WebKit/win/WebDataSource.cpp7
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;
}