Index: chrome/browser/history/history_backend.cc |
=================================================================== |
--- chrome/browser/history/history_backend.cc (revision 103712) |
+++ chrome/browser/history/history_backend.cc (working copy) |
@@ -23,10 +23,13 @@ |
#include "chrome/browser/history/history_notifications.h" |
#include "chrome/browser/history/history_publisher.h" |
#include "chrome/browser/history/in_memory_history_backend.h" |
+#include "chrome/browser/history/in_memory_url_index.h" |
#include "chrome/browser/history/page_usage_data.h" |
#include "chrome/browser/history/top_sites.h" |
+#include "chrome/browser/profiles/profile.h" |
#include "chrome/common/chrome_constants.h" |
#include "chrome/common/chrome_notification_types.h" |
+#include "chrome/common/chrome_switches.h" |
#include "chrome/common/url_constants.h" |
#include "content/browser/download/download_persistent_store_info.h" |
#include "googleurl/src/gurl.h" |
@@ -198,11 +201,13 @@ |
// HistoryBackend -------------------------------------------------------------- |
-HistoryBackend::HistoryBackend(const FilePath& history_dir, |
+HistoryBackend::HistoryBackend(Profile* profile, |
+ const FilePath& history_dir, |
int id, |
Delegate* delegate, |
BookmarkService* bookmark_service) |
- : delegate_(delegate), |
+ : profile_(profile), |
+ delegate_(delegate), |
id_(id), |
history_dir_(history_dir), |
ALLOW_THIS_IN_INITIALIZER_LIST(expirer_(this, bookmark_service)), |
@@ -211,6 +216,10 @@ |
backend_destroy_task_(NULL), |
segment_queried_(false), |
bookmark_service_(bookmark_service) { |
+ if (!CommandLine::ForCurrentProcess()->HasSwitch( |
+ switches::kDisableHistoryQuickProvider)) { |
Peter Kasting
2011/10/05 00:11:42
Nit: No need for {}
mrossetti
2011/10/07 17:04:14
Done.
|
+ in_memory_url_index_.reset(new InMemoryURLIndex(profile_, history_dir_)); |
+ } |
} |
HistoryBackend::~HistoryBackend() { |
@@ -617,6 +626,9 @@ |
archived_db_.reset(); |
} |
+ if (in_memory_url_index_.get()) |
+ in_memory_url_index_->Init(db_.get(), languages); |
+ |
// Tell the expiration module about all the nice databases we made. This must |
// happen before db_->Init() is called since the callback ForceArchiveHistory |
// may need to expire stuff. |
@@ -848,6 +860,7 @@ |
if (row_id && row.title() != title) { |
row.set_title(title); |
db_->UpdateURLRow(row_id, row); |
+ row.id_ = row_id; |
changed_urls.push_back(row); |
if (row.typed_count() > 0) |
typed_url_changed = true; |