relanding fix for bug #406094, as it was not the cause of the Ts / Txul regression.

This commit is contained in:
sspitzer@mozilla.org 2007-12-04 14:04:51 -08:00
parent 108776476e
commit 61fa0d484c
2 changed files with 28 additions and 11 deletions

View File

@ -1702,17 +1702,20 @@ var PlacesUtils = {
var allBookmarksId; var allBookmarksId;
try { try {
leftPaneRoot = prefs.getIntPref("browser.places.leftPaneFolderId"); leftPaneRoot = prefs.getIntPref("browser.places.leftPaneFolderId");
// Build the leftPaneQueries Map // if the pref is set to -1 then we must create a new root because we have a new places.sqlite
delete this.leftPaneQueries; if (leftPaneRoot != -1) {
this.leftPaneQueries = {}; // Build the leftPaneQueries Map
var items = this.annotations.getItemsWithAnnotation(ORGANIZER_QUERY_ANNO, { }); delete this.leftPaneQueries;
for (var i=0; i < items.length; i++) { this.leftPaneQueries = {};
var queryName = this.annotations var items = this.annotations.getItemsWithAnnotation(ORGANIZER_QUERY_ANNO, { });
.getItemAnnotation(items[i], ORGANIZER_QUERY_ANNO); for (var i=0; i < items.length; i++) {
this.leftPaneQueries[queryName] = items[i]; var queryName = this.annotations
.getItemAnnotation(items[i], ORGANIZER_QUERY_ANNO);
this.leftPaneQueries[queryName] = items[i];
}
delete this.leftPaneFolderId;
return this.leftPaneFolderId = leftPaneRoot;
} }
delete this.leftPaneFolderId;
return this.leftPaneFolderId = leftPaneRoot;
} }
catch (ex) { } catch (ex) { }

View File

@ -110,7 +110,10 @@
#define PREF_AUTOCOMPLETE_ENABLED "urlbar.autocomplete.enabled" #define PREF_AUTOCOMPLETE_ENABLED "urlbar.autocomplete.enabled"
#define PREF_DB_CACHE_PERCENTAGE "history_cache_percentage" #define PREF_DB_CACHE_PERCENTAGE "history_cache_percentage"
#define PREF_BROWSER_IMPORT_BOOKMARKS "browser.places.importBookmarksHTML" #define PREF_BROWSER_IMPORT_BOOKMARKS "browser.places.importBookmarksHTML"
#define PREF_BROWSER_IMPORT_DEFAULTS "browser.places.importDefaults"
#define PREF_BROWSER_CREATEDSMARTBOOKMARKS "browser.places.createdSmartBookmarks"
#define PREF_BROWSER_LEFTPANEFOLDERID "browser.places.leftPaneFolderId"
// Default (integer) value of PREF_DB_CACHE_PERCENTAGE from 0-100 // Default (integer) value of PREF_DB_CACHE_PERCENTAGE from 0-100
// This is 6% of machine memory, giving 15MB for a user with 256MB of memory. // This is 6% of machine memory, giving 15MB for a user with 256MB of memory.
// The most that will be used is the size of the DB file. Normal history sizes // The most that will be used is the size of the DB file. Normal history sizes
@ -502,6 +505,17 @@ nsNavHistory::InitDBFile(PRBool aForceInit)
if (prefs) { if (prefs) {
rv = prefs->SetBoolPref(PREF_BROWSER_IMPORT_BOOKMARKS, PR_TRUE); rv = prefs->SetBoolPref(PREF_BROWSER_IMPORT_BOOKMARKS, PR_TRUE);
NS_ENSURE_SUCCESS(rv, rv); NS_ENSURE_SUCCESS(rv, rv);
rv = prefs->SetBoolPref(PREF_BROWSER_IMPORT_DEFAULTS, PR_TRUE);
NS_ENSURE_SUCCESS(rv, rv);
// if the places.sqlite gets deleted/corrupted the queries should be created again
rv = prefs->SetBoolPref(PREF_BROWSER_CREATEDSMARTBOOKMARKS, PR_FALSE);
NS_ENSURE_SUCCESS(rv, rv);
// we must create a new Organizer left pane folder root, the old will not be valid anymore
rv = prefs->SetIntPref(PREF_BROWSER_LEFTPANEFOLDERID, -1);
NS_ENSURE_SUCCESS(rv, rv);
} }
} }