Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(100)

Unified Diff: chrome/utility/importer/firefox_importer.cc

Issue 2296633002: Fix Firefox bookmarks import. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: build fix Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/utility/importer/firefox_importer.h ('k') | chrome/utility/importer/firefox_importer_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/utility/importer/firefox_importer.cc
diff --git a/chrome/utility/importer/firefox_importer.cc b/chrome/utility/importer/firefox_importer.cc
index 8c46d371c475ba8cbc6d3999f521db8584989bdd..7f8d598bca0243e62f11d5d2ce50d8c25ba88764 100644
--- a/chrome/utility/importer/firefox_importer.cc
+++ b/chrome/utility/importer/firefox_importer.cc
@@ -205,10 +205,9 @@ void FirefoxImporter::ImportBookmarks() {
return;
// Get the bookmark folders that we are interested in.
- int toolbar_folder_id = -1;
- int menu_folder_id = -1;
- int unsorted_folder_id = -1;
- LoadRootNodeID(&db, &toolbar_folder_id, &menu_folder_id, &unsorted_folder_id);
+ int toolbar_folder_id = LoadNodeIDByGUID(&db, "toolbar_____");
+ int menu_folder_id = LoadNodeIDByGUID(&db, "menu________");
+ int unsorted_folder_id = LoadNodeIDByGUID(&db, "unfiled_____");
// Load livemark IDs.
std::set<int> livemark_id;
@@ -643,27 +642,18 @@ void FirefoxImporter::GetSearchEnginesXMLDataFromJSON(
}
}
-void FirefoxImporter::LoadRootNodeID(sql::Connection* db,
- int* toolbar_folder_id,
- int* menu_folder_id,
- int* unsorted_folder_id) {
- static const char kToolbarFolderName[] = "toolbar";
- static const char kMenuFolderName[] = "menu";
- static const char kUnsortedFolderName[] = "unfiled";
-
- const char query[] = "SELECT root_name, folder_id FROM moz_bookmarks_roots";
+int FirefoxImporter::LoadNodeIDByGUID(sql::Connection* db,
+ const std::string& GUID) {
+ const char query[] =
+ "SELECT id "
+ "FROM moz_bookmarks "
+ "WHERE guid == ?";
sql::Statement s(db->GetUniqueStatement(query));
+ s.BindString(0, GUID);
- while (s.Step()) {
- std::string folder = s.ColumnString(0);
- int id = s.ColumnInt(1);
- if (folder == kToolbarFolderName)
- *toolbar_folder_id = id;
- else if (folder == kMenuFolderName)
- *menu_folder_id = id;
- else if (folder == kUnsortedFolderName)
- *unsorted_folder_id = id;
- }
+ if (!s.Step())
+ return -1;
+ return s.ColumnInt(0);
}
void FirefoxImporter::LoadLivemarkIDs(sql::Connection* db,
« no previous file with comments | « chrome/utility/importer/firefox_importer.h ('k') | chrome/utility/importer/firefox_importer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698