diff options
author | evan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-10 03:25:40 +0000 |
---|---|---|
committer | evan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-10 03:25:40 +0000 |
commit | fc3fc45793bbd882909b01e2c0f771741f4849ed (patch) | |
tree | fe0c38eea8c3615066355034ff934545b3aa7f89 /chrome | |
parent | 4bcac78e6c353cd9823f559dc8c6181e824e88ce (diff) | |
download | chromium_src-fc3fc45793bbd882909b01e2c0f771741f4849ed.zip chromium_src-fc3fc45793bbd882909b01e2c0f771741f4849ed.tar.gz chromium_src-fc3fc45793bbd882909b01e2c0f771741f4849ed.tar.bz2 |
Re-check in some of my dynamic linking change.
We can't link in any more of these fixed .cc files because of a chain of
dependencies:
- temp_scaffolding_stubs defines the same symbols as these files
- removing the scaffolding pulls in more source
- pulling in that extra source breaks on Mac.
I have resigned myself to checking in this small bit.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9448 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/bookmarks/bookmark_model.cc | 30 | ||||
-rw-r--r-- | chrome/browser/bookmarks/bookmark_storage.cc | 29 | ||||
-rw-r--r-- | chrome/browser/bookmarks/bookmark_storage.h | 5 | ||||
-rw-r--r-- | chrome/browser/history/expire_history_backend.h | 3 | ||||
-rw-r--r-- | chrome/browser/history/history.cc | 5 | ||||
-rw-r--r-- | chrome/browser/history/history_backend.cc | 2 | ||||
-rw-r--r-- | chrome/browser/history/history_backend.h | 3 | ||||
-rw-r--r-- | chrome/common/chrome_constants.cc | 3 | ||||
-rw-r--r-- | chrome/common/chrome_constants.h | 2 |
9 files changed, 54 insertions, 28 deletions
diff --git a/chrome/browser/bookmarks/bookmark_model.cc b/chrome/browser/bookmarks/bookmark_model.cc index 4280808..cb53639 100644 --- a/chrome/browser/bookmarks/bookmark_model.cc +++ b/chrome/browser/bookmarks/bookmark_model.cc @@ -5,6 +5,7 @@ #include "chrome/browser/bookmarks/bookmark_model.h" #include "base/gfx/png_decoder.h" +#include "build/build_config.h" #include "chrome/browser/bookmarks/bookmark_utils.h" #include "chrome/browser/bookmarks/bookmark_storage.h" #include "chrome/browser/profile.h" @@ -61,13 +62,15 @@ void BookmarkNode::Reset(const history::StarredEntry& entry) { BookmarkModel::BookmarkModel(Profile* profile) : profile_(profile), loaded_(false), -#pragma warning(suppress: 4355) // Okay to pass "this" here. - root_(this, GURL()), + ALLOW_THIS_IN_INITIALIZER_LIST(root_(this, GURL())), bookmark_bar_node_(NULL), other_node_(NULL), observers_(ObserverList<BookmarkModelObserver>::NOTIFY_EXISTING_ONLY), - waiting_for_history_load_(false), - loaded_signal_(CreateEvent(NULL, TRUE, FALSE, NULL)) { + waiting_for_history_load_(false) +#if defined(OS_WIN) + , loaded_signal_(CreateEvent(NULL, TRUE, FALSE, NULL)) +#endif +{ // Create the bookmark bar and other bookmarks folders. These always exist. CreateBookmarkNode(); CreateOtherBookmarksNode(); @@ -437,8 +440,12 @@ void BookmarkModel::DoneLoading() { loaded_ = true; +#if defined(OS_WIN) if (loaded_signal_.Get()) SetEvent(loaded_signal_.Get()); +#else + NOTIMPLEMENTED(); +#endif // Notify our direct observers. @@ -467,10 +474,15 @@ void BookmarkModel::RemoveAndDeleteNode(BookmarkNode* delete_me) { // allow duplicates we need to remove any entries that are still bookmarked. for (std::set<GURL>::iterator i = details.changed_urls.begin(); i != details.changed_urls.end(); ){ - if (IsBookmarkedNoLock(*i)) - i = details.changed_urls.erase(i); - else + if (IsBookmarkedNoLock(*i)) { + // When we erase the iterator pointing at the erasee is + // invalidated, so using i++ here within the "erase" call is + // important as it advances the iterator before passing the + // old value through to erase. + details.changed_urls.erase(i++); + } else { ++i; + } } } @@ -522,8 +534,12 @@ BookmarkNode* BookmarkModel::AddNode(BookmarkNode* parent, } void BookmarkModel::BlockTillLoaded() { +#if defined(OS_WIN) if (loaded_signal_.Get()) WaitForSingleObject(loaded_signal_.Get(), INFINITE); +#else + NOTIMPLEMENTED(); +#endif } BookmarkNode* BookmarkModel::GetNodeByID(BookmarkNode* node, int id) { diff --git a/chrome/browser/bookmarks/bookmark_storage.cc b/chrome/browser/bookmarks/bookmark_storage.cc index 4f2ae9f..64743e5 100644 --- a/chrome/browser/bookmarks/bookmark_storage.cc +++ b/chrome/browser/bookmarks/bookmark_storage.cc @@ -19,11 +19,11 @@ namespace { // Extension used for backup files (copy of main file created during startup). -const wchar_t* const kBackupExtension = L"bak"; +const FilePath::CharType kBackupExtension[] = FILE_PATH_LITERAL("bak"); // Extension for the temporary file. We write to the temp file than move to // kBookmarksFileName. -const wchar_t* const kTmpExtension = L"tmp"; +const FilePath::CharType kTmpExtension[] = FILE_PATH_LITERAL("tmp"); // How often we save. const int kSaveDelayMS = 2500; @@ -36,10 +36,9 @@ BookmarkStorage::BookmarkStorage(Profile* profile, BookmarkModel* model) : model_(model), ALLOW_THIS_IN_INITIALIZER_LIST(save_factory_(this)), backend_thread_(g_browser_process->file_thread()) { - std::wstring path = profile->GetPath().ToWStringHack(); - file_util::AppendToPath(&path, chrome::kBookmarksFileName); - std::wstring tmp_history_path = profile->GetPath().ToWStringHack(); - file_util::AppendToPath(&tmp_history_path, chrome::kHistoryBookmarksFileName); + FilePath path = profile->GetPath().Append(chrome::kBookmarksFileName); + FilePath tmp_history_path = + profile->GetPath().Append(chrome::kHistoryBookmarksFileName); backend_ = new BookmarkStorageBackend(path, tmp_history_path); } @@ -115,13 +114,12 @@ void BookmarkStorage::SaveNow() { // BookmarkStorageBackend ------------------------------------------------------ BookmarkStorageBackend::BookmarkStorageBackend( - const std::wstring& path, - const std::wstring& tmp_history_path) - : path_(path), - tmp_history_path_(tmp_history_path) { + const FilePath& path, + const FilePath& tmp_history_path) + : path_(path.ToWStringHack()), + tmp_history_path_(tmp_history_path.ToWStringHack()) { // Make a backup of the current file. - std::wstring backup_path = path; - file_util::ReplaceExtension(&backup_path, kBackupExtension); + FilePath backup_path = path.ReplaceExtension(kBackupExtension); file_util::CopyFile(path, backup_path); } @@ -135,8 +133,11 @@ void BookmarkStorageBackend::Write(Value* value) { JSONWriter::Write(value, true, &content); // Write to a temp file, then rename. - std::wstring tmp_file = path_; - file_util::ReplaceExtension(&tmp_file, kTmpExtension); + // TODO(port): this code was all written to use wstrings; needs cleaning up + // for FilePath. + FilePath tmp_file_filepath = + FilePath::FromWStringHack(path_).ReplaceExtension(kTmpExtension); + std::wstring tmp_file = tmp_file_filepath.ToWStringHack(); int bytes_written = file_util::WriteFile(tmp_file, content.c_str(), static_cast<int>(content.length())); diff --git a/chrome/browser/bookmarks/bookmark_storage.h b/chrome/browser/bookmarks/bookmark_storage.h index f63aa81..59b91a8 100644 --- a/chrome/browser/bookmarks/bookmark_storage.h +++ b/chrome/browser/bookmarks/bookmark_storage.h @@ -10,6 +10,7 @@ class BookmarkModel; class BookmarkStorageBackend; +class FilePath; class Profile; class MessageLoop; class Value; @@ -75,8 +76,8 @@ class BookmarkStorage : public base::RefCountedThreadSafe<BookmarkStorage> { class BookmarkStorageBackend : public base::RefCountedThreadSafe<BookmarkStorageBackend> { public: - explicit BookmarkStorageBackend(const std::wstring& path, - const std::wstring& tmp_histor_path); + explicit BookmarkStorageBackend(const FilePath& path, + const FilePath& tmp_history_path); // Writes the specified value to disk. This takes ownership of |value| and // deletes it when done. diff --git a/chrome/browser/history/expire_history_backend.h b/chrome/browser/history/expire_history_backend.h index 0e5ab44..ed44096 100644 --- a/chrome/browser/history/expire_history_backend.h +++ b/chrome/browser/history/expire_history_backend.h @@ -18,6 +18,7 @@ class BookmarkService; class GURL; class NotificationType; +class TestingProfile; namespace history { @@ -85,7 +86,7 @@ class ExpireHistoryBackend { FRIEND_TEST(ExpireHistoryTest, DeleteTextIndexForURL); FRIEND_TEST(ExpireHistoryTest, DeleteFaviconsIfPossible); FRIEND_TEST(ExpireHistoryTest, ArchiveSomeOldHistory); - friend class TestingProfile; + friend class ::TestingProfile; struct DeleteDependencies { // The time range affected. These can be is_null() to be unbounded in one diff --git a/chrome/browser/history/history.cc b/chrome/browser/history/history.cc index 0bfcd6fa..74118d0 100644 --- a/chrome/browser/history/history.cc +++ b/chrome/browser/history/history.cc @@ -599,6 +599,7 @@ void HistoryService::SetInMemoryBackend( } void HistoryService::NotifyTooNew() { +#if defined(OS_WIN) // Find the last browser window to display our message box from. Browser* cur_browser = BrowserList::GetLastActive(); // TODO(brettw): Do this some other way or beng will kick you. e.g. move to @@ -611,6 +612,10 @@ void HistoryService::NotifyTooNew() { std::wstring message = l10n_util::GetString(IDS_PROFILE_TOO_NEW_ERROR); MessageBox(cur_hwnd, message.c_str(), title.c_str(), MB_OK | MB_ICONWARNING | MB_TOPMOST); +#else + // TODO(port): factor this out into platform-specific code. + NOTIMPLEMENTED(); +#endif } void HistoryService::DeleteURL(const GURL& url) { diff --git a/chrome/browser/history/history_backend.cc b/chrome/browser/history/history_backend.cc index c899700..6bed37a 100644 --- a/chrome/browser/history/history_backend.cc +++ b/chrome/browser/history/history_backend.cc @@ -477,7 +477,7 @@ void HistoryBackend::InitImpl() { std::wstring archived_name = GetArchivedFileName(); std::wstring tmp_bookmarks_file = history_dir_; file_util::AppendToPath(&tmp_bookmarks_file, - chrome::kHistoryBookmarksFileName); + FilePath(chrome::kHistoryBookmarksFileName).ToWStringHack()); // History database. db_.reset(new HistoryDatabase()); diff --git a/chrome/browser/history/history_backend.h b/chrome/browser/history/history_backend.h index 8918742..1dfa16e 100644 --- a/chrome/browser/history/history_backend.h +++ b/chrome/browser/history/history_backend.h @@ -26,6 +26,7 @@ #include "testing/gtest/include/gtest/gtest_prod.h" class BookmarkService; +class TestingProfile; struct ThumbnailScore; namespace history { @@ -260,7 +261,7 @@ class HistoryBackend : public base::RefCountedThreadSafe<HistoryBackend>, friend class HistoryTest; // So the unit tests can poke our innards. FRIEND_TEST(HistoryBackendTest, DeleteAll); FRIEND_TEST(HistoryBackendTest, URLsNoLongerBookmarked); - friend class TestingProfile; + friend class ::TestingProfile; // Computes the name of the specified database on disk. std::wstring GetThumbnailFileName() const; diff --git a/chrome/common/chrome_constants.cc b/chrome/common/chrome_constants.cc index a0ae25b..494d3b0 100644 --- a/chrome/common/chrome_constants.cc +++ b/chrome/common/chrome_constants.cc @@ -42,7 +42,8 @@ const wchar_t kUserDataDirname[] = L"User Data"; const FilePath::CharType kUserScriptsDirname[] = FPL("User Scripts"); const FilePath::CharType kWebDataFilename[] = FPL("Web Data"); const FilePath::CharType kBookmarksFileName[] = FPL("Bookmarks"); -const wchar_t kHistoryBookmarksFileName[] = L"Bookmarks From History"; +const FilePath::CharType kHistoryBookmarksFileName[] = + FPL("Bookmarks From History"); const wchar_t kCustomDictionaryFileName[] = L"Custom Dictionary.txt"; // Note, this shouldn't go above 64. See bug 535234. diff --git a/chrome/common/chrome_constants.h b/chrome/common/chrome_constants.h index a752aba..0ddf579 100644 --- a/chrome/common/chrome_constants.h +++ b/chrome/common/chrome_constants.h @@ -37,7 +37,7 @@ extern const wchar_t kUserDataDirname[]; extern const FilePath::CharType kUserScriptsDirname[]; extern const FilePath::CharType kWebDataFilename[]; extern const FilePath::CharType kBookmarksFileName[]; -extern const wchar_t kHistoryBookmarksFileName[]; +extern const FilePath::CharType kHistoryBookmarksFileName[]; extern const wchar_t kCustomDictionaryFileName[]; extern const unsigned int kMaxRendererProcessCount; |