diff options
author | rsleevi@chromium.org <rsleevi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-25 00:42:51 +0000 |
---|---|---|
committer | rsleevi@chromium.org <rsleevi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-25 00:42:51 +0000 |
commit | a9aaa9d16ba4bfc0a1e765d349cae8470301749e (patch) | |
tree | 4226196cc74eb37c1c408ca6b28bed5d1fab34e7 /base/message_loop_unittest.cc | |
parent | 8c81e9eccca97e2de13c8a5fe3059f238492a066 (diff) | |
download | chromium_src-a9aaa9d16ba4bfc0a1e765d349cae8470301749e.zip chromium_src-a9aaa9d16ba4bfc0a1e765d349cae8470301749e.tar.gz chromium_src-a9aaa9d16ba4bfc0a1e765d349cae8470301749e.tar.bz2 |
RefCounted types should not have public destructors, base/ edition
BUG=123295
TEST=none
Review URL: http://codereview.chromium.org/10065037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@133825 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/message_loop_unittest.cc')
-rw-r--r-- | base/message_loop_unittest.cc | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/base/message_loop_unittest.cc b/base/message_loop_unittest.cc index d1e921c..15f825b 100644 --- a/base/message_loop_unittest.cc +++ b/base/message_loop_unittest.cc @@ -397,6 +397,11 @@ class RecordDeletionProbe : public base::RefCounted<RecordDeletionProbe> { RecordDeletionProbe(RecordDeletionProbe* post_on_delete, bool* was_deleted) : post_on_delete_(post_on_delete), was_deleted_(was_deleted) { } + void Run() {} + + private: + friend class base::RefCounted<RecordDeletionProbe>; + ~RecordDeletionProbe() { *was_deleted_ = true; if (post_on_delete_) @@ -404,8 +409,7 @@ class RecordDeletionProbe : public base::RefCounted<RecordDeletionProbe> { FROM_HERE, base::Bind(&RecordDeletionProbe::Run, post_on_delete_.get())); } - void Run() {} - private: + scoped_refptr<RecordDeletionProbe> post_on_delete_; bool* was_deleted_; }; @@ -1624,15 +1628,18 @@ class DestructionObserverProbe : : task_destroyed_(task_destroyed), destruction_observer_called_(destruction_observer_called) { } - virtual ~DestructionObserverProbe() { - EXPECT_FALSE(*destruction_observer_called_); - *task_destroyed_ = true; - } virtual void Run() { // This task should never run. ADD_FAILURE(); } private: + friend class base::RefCounted<DestructionObserverProbe>; + + virtual ~DestructionObserverProbe() { + EXPECT_FALSE(*destruction_observer_called_); + *task_destroyed_ = true; + } + bool* task_destroyed_; bool* destruction_observer_called_; }; |