summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/svg/graphics/SVGImage.cpp
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2011-05-24 11:24:40 +0100
committerBen Murdoch <benm@google.com>2011-06-02 09:53:15 +0100
commit81bc750723a18f21cd17d1b173cd2a4dda9cea6e (patch)
tree7a9e5ed86ff429fd347a25153107221543909b19 /Source/WebCore/svg/graphics/SVGImage.cpp
parent94088a6d336c1dd80a1e734af51e96abcbb689a7 (diff)
downloadexternal_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.zip
external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.gz
external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.bz2
Merge WebKit at r80534: Intial merge by Git
Change-Id: Ia7a83357124c9e1cdb1debf55d9661ec0bd09a61
Diffstat (limited to 'Source/WebCore/svg/graphics/SVGImage.cpp')
-rw-r--r--Source/WebCore/svg/graphics/SVGImage.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/Source/WebCore/svg/graphics/SVGImage.cpp b/Source/WebCore/svg/graphics/SVGImage.cpp
index 2d400a4..85c00f3 100644
--- a/Source/WebCore/svg/graphics/SVGImage.cpp
+++ b/Source/WebCore/svg/graphics/SVGImage.cpp
@@ -263,8 +263,11 @@ bool SVGImage::dataChanged(bool allDataReceived)
#endif
// FIXME: If this SVG ends up loading itself, we might leak the world.
- // The comment said that the Cache code does not know about CachedImages
- // holding Frames and won't know to break the cycle. But
+ // The Cache code does not know about CachedImages holding Frames and
+ // won't know to break the cycle.
+ // This will become an issue when SVGImage will be able to load other
+ // SVGImage objects, but we're safe now, because SVGImage can only be
+ // loaded by a top-level document.
m_page.set(new Page(pageClients));
m_page->settings()->setMediaEnabled(false);
m_page->settings()->setJavaScriptEnabled(false);
@@ -273,12 +276,9 @@ bool SVGImage::dataChanged(bool allDataReceived)
RefPtr<Frame> frame = Frame::create(m_page.get(), 0, dummyFrameLoaderClient);
frame->setView(FrameView::create(frame.get()));
frame->init();
- ResourceRequest fakeRequest(KURL(ParsedURLString, ""));
FrameLoader* loader = frame->loader();
loader->setForcedSandboxFlags(SandboxAll);
- loader->load(fakeRequest, false); // Make sure the DocumentLoader is created
- loader->policyChecker()->cancelCheck(); // cancel any policy checks
- loader->commitProvisionalLoad();
+ ASSERT(loader->activeDocumentLoader()); // DocumentLoader should have been created by frame->init().
loader->activeDocumentLoader()->writer()->setMIMEType("image/svg+xml");
loader->activeDocumentLoader()->writer()->begin(KURL()); // create the empty document
loader->activeDocumentLoader()->writer()->addData(data()->data(), data()->size());