summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2012-09-07 11:06:49 -0700
committerJohn Reck <jreck@google.com>2012-09-07 11:06:49 -0700
commit61df0147f508e20bd22fab568b7c8b3c405cfad5 (patch)
treec95031ca9c90e6039435546e2ed38c86c7a78a30
parent7fe521c630ad9fb57d288c5d59af5ad4630ca166 (diff)
downloadexternal_webkit-61df0147f508e20bd22fab568b7c8b3c405cfad5.zip
external_webkit-61df0147f508e20bd22fab568b7c8b3c405cfad5.tar.gz
external_webkit-61df0147f508e20bd22fab568b7c8b3c405cfad5.tar.bz2
Fix crash if SVG tries to load a resource
Bug: 7089191 SVGImage is created with an EmptyFrameLoaderClient. This client returns a null networkingContext(), which will than cause ResourceHandleAndroid to crash. The fix is simple, return a load failure if we are given a null or invalid NetworkingContext Change-Id: Ib25c2449527ca7d3693b78425c0bc5f2e9a12f74
-rw-r--r--Source/WebCore/platform/network/android/ResourceHandleAndroid.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/WebCore/platform/network/android/ResourceHandleAndroid.cpp b/Source/WebCore/platform/network/android/ResourceHandleAndroid.cpp
index 4bc918b..bf5ccf5 100644
--- a/Source/WebCore/platform/network/android/ResourceHandleAndroid.cpp
+++ b/Source/WebCore/platform/network/android/ResourceHandleAndroid.cpp
@@ -50,6 +50,9 @@ ResourceHandle::~ResourceHandle()
bool ResourceHandle::start(NetworkingContext* context)
{
+ if (!context || !context->isValid())
+ return false;
+
MainResourceLoader* mainLoader = context->mainResourceLoader();
bool isMainResource = static_cast<void*>(mainLoader) == static_cast<void*>(client());
RefPtr<ResourceLoaderAndroid> loader = ResourceLoaderAndroid::start(this, d->m_firstRequest, context->frameLoaderClient(), isMainResource, false);