summaryrefslogtreecommitdiffstats
path: root/webkit/glue/weburlloader_impl.cc
diff options
context:
space:
mode:
authortony@chromium.org <tony@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-24 00:23:41 +0000
committertony@chromium.org <tony@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-24 00:23:41 +0000
commita9768f7049274a7e18504226fe411a562ca2fec3 (patch)
treefd3738ecd847d6aa248bc165fec6b2d2ff3e6b30 /webkit/glue/weburlloader_impl.cc
parent147167becd3bc65698ad8122461449256fbb7362 (diff)
downloadchromium_src-a9768f7049274a7e18504226fe411a562ca2fec3.zip
chromium_src-a9768f7049274a7e18504226fe411a562ca2fec3.tar.gz
chromium_src-a9768f7049274a7e18504226fe411a562ca2fec3.tar.bz2
Fix a crash when the content type of a multipart request
changes to a content type that we ignore the load of. For example, if the content type of a multipart request changes from text/html to foo/bar, we would crash because we would delete the multipart delegate while it was still on the stack. BUG=47105 Review URL: http://codereview.chromium.org/2850023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50676 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/weburlloader_impl.cc')
-rw-r--r--webkit/glue/weburlloader_impl.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/webkit/glue/weburlloader_impl.cc b/webkit/glue/weburlloader_impl.cc
index 4261f0f..8800d6a9 100644
--- a/webkit/glue/weburlloader_impl.cc
+++ b/webkit/glue/weburlloader_impl.cc
@@ -270,7 +270,8 @@ void WebURLLoaderImpl::Context::Cancel() {
// Ensure that we do not notify the multipart delegate anymore as it has
// its own pointer to the client.
- multipart_delegate_.reset();
+ if (multipart_delegate_.get())
+ multipart_delegate_->Cancel();
// Do not make any further calls to the client.
client_ = NULL;