summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/extensions/user_script_slave.cc
diff options
context:
space:
mode:
authortony@chromium.org <tony@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-27 22:13:49 +0000
committertony@chromium.org <tony@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-27 22:13:49 +0000
commit076bca74bc87a189fe2fa3fa8d3e74438c2b7eac (patch)
tree31a923e3c6ecfe4486a9852979adc2ef0904914c /chrome/renderer/extensions/user_script_slave.cc
parente5d982d40c7d6a0e03da2c6772265bbf7455773f (diff)
downloadchromium_src-076bca74bc87a189fe2fa3fa8d3e74438c2b7eac.zip
chromium_src-076bca74bc87a189fe2fa3fa8d3e74438c2b7eac.tar.gz
chromium_src-076bca74bc87a189fe2fa3fa8d3e74438c2b7eac.tar.bz2
Fix a crash when loading a multipart html page.
When loading a multipart page, the load hasn't been committed yet so dataSource() is NULL. In that case, use the provisionalDataSource(). BUG=97592 TEST=covered by browser_tests Review URL: http://codereview.chromium.org/8044003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103027 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/extensions/user_script_slave.cc')
-rw-r--r--chrome/renderer/extensions/user_script_slave.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/chrome/renderer/extensions/user_script_slave.cc b/chrome/renderer/extensions/user_script_slave.cc
index dbdec79..a623416 100644
--- a/chrome/renderer/extensions/user_script_slave.cc
+++ b/chrome/renderer/extensions/user_script_slave.cc
@@ -239,7 +239,10 @@ void UserScriptSlave::InjectScripts(WebFrame* frame,
// changes to match the parent document after Gmail document.writes into
// it to create the editor.
// http://code.google.com/p/chromium/issues/detail?id=86742
- GURL data_source_url = GURL(frame->dataSource()->request().url());
+ WebKit::WebDataSource* data_source = frame->dataSource() ?
+ frame->dataSource() : frame->provisionalDataSource();
+ CHECK(data_source);
+ GURL data_source_url = GURL(data_source->request().url());
if (data_source_url.is_empty())
return;