libcef: Update due to underlying chromium changes.

- WebKit API upstreamed requiring header include path changes.
- AppCache, Database and ResourceLoader updates.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@65 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2010-01-12 01:37:00 +00:00
parent 0b9e189154
commit 23e155dca1
29 changed files with 441 additions and 217 deletions

View File

@ -360,7 +360,7 @@ private:
CefUrlRequestFilter* CefUrlRequestFilter::shared_instance_ = NULL;
class SchemeRequestJobWrapper {
class SchemeRequestJobWrapper : public CefThreadSafeBase<CefBase> {
public:
SchemeRequestJobWrapper(const std::string& scheme_name,
const std::string& host_name,
@ -379,9 +379,6 @@ public:
scheme_name_, host_name_, factory_);
}
void AddRef() {}
void Release() { delete this; }
static bool ImplementsThreadSafeReferenceCounting() { return true; }
private:
@ -398,10 +395,16 @@ bool CefRegisterScheme(const std::wstring& scheme_name,
if(!_Context.get())
return false;
SchemeRequestJobWrapper* wrapper = new SchemeRequestJobWrapper(
WideToUTF8(scheme_name), WideToUTF8(host_name), factory);
// Use a smart pointer for the wrapper object because
// RunnableMethodTraits::RetainCallee() (originating from NewRunnableMethod)
// will call AddRef() and Release() on the object in debug mode, resulting in
// the object being deleted if it doesn't already have a reference.
CefRefPtr<SchemeRequestJobWrapper> wrapper(
new SchemeRequestJobWrapper(WideToUTF8(scheme_name),
WideToUTF8(host_name), factory));
PostTask(FROM_HERE, NewRunnableMethod(wrapper,
PostTask(FROM_HERE, NewRunnableMethod(wrapper.get(),
&SchemeRequestJobWrapper::RegisterScheme));
return true;
}