Chromium Code Reviews| Index: athena/activity/activity_manager_impl.cc |
| diff --git a/athena/activity/activity_manager_impl.cc b/athena/activity/activity_manager_impl.cc |
| index ba72f0dea52bf2d10a747921b828d24938b24af7..236757459b0a126faf3aba5e01e3ffbac56fff6c 100644 |
| --- a/athena/activity/activity_manager_impl.cc |
| +++ b/athena/activity/activity_manager_impl.cc |
| @@ -7,8 +7,11 @@ |
| #include <algorithm> |
| #include <vector> |
| +#include "athena/activity/public/activity.h" |
| #include "athena/activity/public/activity_view_manager.h" |
| #include "base/logging.h" |
| +#include "base/memory/scoped_vector.h" |
| +#include "base/stl_util.h" |
| namespace athena { |
| @@ -23,6 +26,9 @@ class ActivityManagerImpl : public ActivityManager { |
| instance = this; |
| } |
| virtual ~ActivityManagerImpl() { |
| + while (activities_.empty()) |
| + delete activities_.front(); |
|
sadrul
2014/06/04 20:34:05
STLDeleteContainerPointers instead?
Jun Mukai
2014/06/04 21:11:14
RemoveActivity changes the contents of |activities
|
| + |
| CHECK_EQ(this, instance); |
| instance = NULL; |
| } |
| @@ -77,10 +83,9 @@ ActivityManager* ActivityManager::Get() { |
| } |
| void ActivityManager::Shutdown() { |
| - ActivityViewManager::Shutdown(); |
| - |
| CHECK(instance); |
| delete instance; |
| + ActivityViewManager::Shutdown(); |
|
sadrul
2014/06/04 20:34:05
This seems unfortunate.
Jun Mukai
2014/06/04 21:11:14
Because ActivityManager depends on ActivityViewMan
|
| } |
| } // namespace athena |