| Index: sync/syncable/syncable_unittest.cc
|
| diff --git a/sync/syncable/syncable_unittest.cc b/sync/syncable/syncable_unittest.cc
|
| index 1cbd457229a762cfd119a9fb630f1f97f84a5efd..850be5fe02b20d8d6aa10a446b520ec44a3d5450 100644
|
| --- a/sync/syncable/syncable_unittest.cc
|
| +++ b/sync/syncable/syncable_unittest.cc
|
| @@ -85,7 +85,7 @@ class TestDirectory : public Directory {
|
| // A factory function used to work around some initialization order issues.
|
| static TestDirectory* Create(
|
| Encryptor *encryptor,
|
| - UnrecoverableErrorHandler *handler,
|
| + const WeakHandle<UnrecoverableErrorHandler>& handler,
|
| const std::string& dir_name,
|
| const base::FilePath& backing_filepath);
|
|
|
| @@ -97,7 +97,7 @@ class TestDirectory : public Directory {
|
|
|
| private:
|
| TestDirectory(Encryptor* encryptor,
|
| - UnrecoverableErrorHandler* handler,
|
| + const WeakHandle<UnrecoverableErrorHandler>& handler,
|
| TestBackingStore* backing_store);
|
|
|
| TestBackingStore* backing_store_;
|
| @@ -105,7 +105,7 @@ class TestDirectory : public Directory {
|
|
|
| TestDirectory* TestDirectory::Create(
|
| Encryptor *encryptor,
|
| - UnrecoverableErrorHandler *handler,
|
| + const WeakHandle<UnrecoverableErrorHandler>& handler,
|
| const std::string& dir_name,
|
| const base::FilePath& backing_filepath) {
|
| TestBackingStore* backing_store =
|
| @@ -113,12 +113,12 @@ TestDirectory* TestDirectory::Create(
|
| return new TestDirectory(encryptor, handler, backing_store);
|
| }
|
|
|
| -TestDirectory::TestDirectory(Encryptor* encryptor,
|
| - UnrecoverableErrorHandler* handler,
|
| - TestBackingStore* backing_store)
|
| +TestDirectory::TestDirectory(
|
| + Encryptor* encryptor,
|
| + const WeakHandle<UnrecoverableErrorHandler>& handler,
|
| + TestBackingStore* backing_store)
|
| : Directory(backing_store, handler, base::Closure(), NULL, NULL),
|
| - backing_store_(backing_store) {
|
| -}
|
| + backing_store_(backing_store) {}
|
|
|
| TestDirectory::~TestDirectory() { }
|
|
|
| @@ -133,8 +133,8 @@ TEST(OnDiskSyncableDirectory, FailInitialWrite) {
|
| std::string name = "user@x.com";
|
| NullDirectoryChangeDelegate delegate;
|
|
|
| - scoped_ptr<TestDirectory> test_dir(
|
| - TestDirectory::Create(&encryptor, &handler, name, file_path));
|
| + scoped_ptr<TestDirectory> test_dir(TestDirectory::Create(
|
| + &encryptor, MakeWeakHandle(handler.GetWeakPtr()), name, file_path));
|
|
|
| test_dir->StartFailingSaveChanges();
|
| ASSERT_EQ(FAILED_INITIAL_WRITE, test_dir->Open(name, &delegate,
|
| @@ -166,7 +166,9 @@ class OnDiskSyncableDirectoryTest : public SyncableDirectoryTest {
|
| // Creates a new directory. Deletes the old directory, if it exists.
|
| void CreateDirectory() {
|
| test_directory_ = TestDirectory::Create(
|
| - encryptor(), unrecoverable_error_handler(), kDirectoryName, file_path_);
|
| + encryptor(),
|
| + MakeWeakHandle(unrecoverable_error_handler()->GetWeakPtr()),
|
| + kDirectoryName, file_path_);
|
| dir().reset(test_directory_);
|
| ASSERT_TRUE(dir().get());
|
| ASSERT_EQ(OPENED,
|
| @@ -344,9 +346,10 @@ TEST_F(OnDiskSyncableDirectoryTest,
|
| }
|
|
|
| dir()->SaveChanges();
|
| - dir().reset(new Directory(
|
| - new OnDiskDirectoryBackingStore(kDirectoryName, file_path_),
|
| - unrecoverable_error_handler(), base::Closure(), NULL, NULL));
|
| + dir().reset(
|
| + new Directory(new OnDiskDirectoryBackingStore(kDirectoryName, file_path_),
|
| + MakeWeakHandle(unrecoverable_error_handler()->GetWeakPtr()),
|
| + base::Closure(), NULL, NULL));
|
|
|
| ASSERT_TRUE(dir().get());
|
| ASSERT_EQ(OPENED,
|
| @@ -559,8 +562,9 @@ TEST_F(SyncableDirectoryManagement, TestFileRelease) {
|
| temp_dir_.path().Append(Directory::kSyncDatabaseFilename);
|
|
|
| {
|
| - Directory dir(new OnDiskDirectoryBackingStore("ScopeTest", path), &handler_,
|
| - base::Closure(), NULL, NULL);
|
| + Directory dir(new OnDiskDirectoryBackingStore("ScopeTest", path),
|
| + MakeWeakHandle(handler_.GetWeakPtr()), base::Closure(), NULL,
|
| + NULL);
|
| DirOpenResult result =
|
| dir.Open("ScopeTest", &delegate_, NullTransactionObserver());
|
| ASSERT_EQ(result, OPENED);
|
|
|