Avoid crash due to missing prerenderer support (issue #608).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@657 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2012-05-30 20:35:41 +00:00
parent 5c2e5eab8d
commit dbe75b1326
7 changed files with 32 additions and 0 deletions

View File

@@ -13,6 +13,7 @@
#include "base/path_service.h"
#include "base/utf_string_conversions.h"
#include "media/base/media.h"
#include "third_party/WebKit/Source/Platform/chromium/public/WebPrerenderingSupport.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebDatabase.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebKit.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebRuntimeFeatures.h"
@@ -23,6 +24,18 @@
#include "webkit/plugins/npapi/plugin_list.h"
// Stub implementation of WebKit::WebPrerenderingSupport.
class BrowserPrerenderingSupport : public WebKit::WebPrerenderingSupport {
public:
virtual ~BrowserPrerenderingSupport() {}
private:
virtual void add(const WebKit::WebPrerender& prerender) OVERRIDE {}
virtual void cancel(const WebKit::WebPrerender& prerender) OVERRIDE {}
virtual void abandon(const WebKit::WebPrerender& prerender) OVERRIDE {}
};
BrowserWebKitInit::BrowserWebKitInit()
: clipboard_(&clipboard_client_) {
v8::V8::SetCounterFunction(base::StatsTable::FindLocation);
@@ -44,6 +57,9 @@ BrowserWebKitInit::BrowserWebKitInit()
WebKit::WebRuntimeFeatures::enableDeviceMotion(false);
WebKit::WebRuntimeFeatures::enableDeviceOrientation(false);
prerendering_support_.reset(new BrowserPrerenderingSupport);
WebKit::WebPrerenderingSupport::initialize(prerendering_support_.get());
// Load libraries for media and enable the media player.
FilePath module_path;
WebKit::WebRuntimeFeatures::enableMediaPlayer(