diff --git a/libcef/browser/browser_urlrequest_impl.cc b/libcef/browser/browser_urlrequest_impl.cc index cc2d70d3e..949198617 100644 --- a/libcef/browser/browser_urlrequest_impl.cc +++ b/libcef/browser/browser_urlrequest_impl.cc @@ -371,7 +371,10 @@ CefURLFetcherDelegate::~CefURLFetcherDelegate() { void CefURLFetcherDelegate::OnURLFetchComplete( const net::URLFetcher* source) { - context_->OnComplete(); + // Complete asynchronously so as not to delete the URLFetcher while it's still + // in the call stack. + base::MessageLoop::current()->PostTask(FROM_HERE, + base::Bind(&CefBrowserURLRequest::Context::OnComplete, context_)); } void CefURLFetcherDelegate::OnURLFetchDownloadProgress(