From 2b570bb44475baf77098f1809fa495a42a8a98e1 Mon Sep 17 00:00:00 2001 From: "dietrich%mozilla.com" Date: Thu, 10 Jan 2008 23:37:46 +0000 Subject: [PATCH] reverting bug 381365 for perf regression git-svn-id: svn://10.0.0.236/trunk@242869 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/browser/components/nsBrowserGlue.js | 9 ------- .../profile/src/nsToolkitProfileService.cpp | 25 ++++++++++++++++++- 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/mozilla/browser/components/nsBrowserGlue.js b/mozilla/browser/components/nsBrowserGlue.js index b22294397d6..9d98e4a557f 100644 --- a/mozilla/browser/components/nsBrowserGlue.js +++ b/mozilla/browser/components/nsBrowserGlue.js @@ -359,15 +359,6 @@ BrowserGlue.prototype = { var bookmarksFile = dirService.get("BMarks", Ci.nsILocalFile); - if (!bookmarksFile.exists()) { - // if bookmarks file does not exist, import default bookmarks - var bookmarksFileName = "bookmarks.html"; - bookmarksFile = dirService.get("profDef", Ci.nsILocalFile); - bookmarksFile.append(bookmarksFileName); - var profDir = dirService.get("ProfD", Ci.nsILocalFile); - bookmarksFile.copyTo(profDir, bookmarksFileName); - } - if (bookmarksFile.exists()) { // import the file try { diff --git a/mozilla/toolkit/profile/src/nsToolkitProfileService.cpp b/mozilla/toolkit/profile/src/nsToolkitProfileService.cpp index 959b3d37615..13b910e9b56 100644 --- a/mozilla/toolkit/profile/src/nsToolkitProfileService.cpp +++ b/mozilla/toolkit/profile/src/nsToolkitProfileService.cpp @@ -686,7 +686,30 @@ nsToolkitProfileService::CreateProfile(nsILocalFile* aRootDir, return NS_ERROR_FILE_NOT_DIRECTORY; } else { - rv = rootDir->Create(nsIFile::DIRECTORY_TYPE, 0700); + nsCOMPtr profileDefaultsDir; + nsCOMPtr profileDirParent; + nsCAutoString profileDirName; + + rv = rootDir->GetParent(getter_AddRefs(profileDirParent)); + NS_ENSURE_SUCCESS(rv, rv); + + rv = rootDir->GetNativeLeafName(profileDirName); + NS_ENSURE_SUCCESS(rv, rv); + + PRBool dummy; + rv = gDirServiceProvider->GetFile(NS_APP_PROFILE_DEFAULTS_50_DIR, &dummy, + getter_AddRefs(profileDefaultsDir)); + + if (NS_SUCCEEDED(rv)) + rv = profileDefaultsDir->CopyToNative(profileDirParent, + profileDirName); + if (NS_FAILED(rv)) { + // if copying failed, lets just ensure that the profile directory exists. + rv = rootDir->Create(nsIFile::DIRECTORY_TYPE, 0700); + NS_ENSURE_SUCCESS(rv, rv); + } + + rv = rootDir->SetPermissions(0700); NS_ENSURE_SUCCESS(rv, rv); }