Index: components/webdata/common/web_data_service_backend.cc |
diff --git a/components/webdata/common/web_data_service_backend.cc b/components/webdata/common/web_data_service_backend.cc |
index 3b945b0b540f721304917c9d135b52a16689f890..e5f8b5fc424d1ebf35b220224687301c3cb2cfc8 100644 |
--- a/components/webdata/common/web_data_service_backend.cc |
+++ b/components/webdata/common/web_data_service_backend.cc |
@@ -92,6 +92,15 @@ void WebDataServiceBackend::DBReadTaskWrapper( |
request_manager_->RequestCompleted(request.Pass()); |
} |
+void WebDataServiceBackend::GetDatabaseAsync( |
+ const WebDatabaseService::DBCallback& callback) { |
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::DB)); |
+ if (!db_ || init_status_ != sql::INIT_OK) |
+ callback.Run(base::WeakPtr<WebDatabase>()); |
+ else |
+ callback.Run(db_->AsWeakPtr()); |
+} |
+ |
WebDataServiceBackend::~WebDataServiceBackend() { |
ShutdownDatabase(false); |
} |