Index: base/at_exit.h |
diff --git a/base/at_exit.h b/base/at_exit.h |
index 613c9fe7d1729f8a9590e50abc3f8547c0676bb8..29ea76d62705b031cca40e459dd253f93430f944 100644 |
--- a/base/at_exit.h |
+++ b/base/at_exit.h |
@@ -1,4 +1,4 @@ |
-// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
+// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
@@ -15,6 +15,8 @@ |
namespace base { |
+class TestWatchAtExitManager; |
+ |
// This class provides a facility similar to the CRT atexit(), except that |
// we control when the callbacks are executed. Under Windows for a DLL they |
// happen at a really bad time and under the loader lock. This facility is |
@@ -58,6 +60,11 @@ class BASE_EXPORT AtExitManager { |
explicit AtExitManager(bool shadow); |
private: |
+ friend class TestWatchAtExitManager; |
+ |
+ static AtExitManager* current(); |
+ size_t CallbackStackSize() const; |
+ |
base::Lock lock_; |
std::stack<base::Closure> stack_; |
AtExitManager* next_manager_; // Stack of managers to allow shadowing. |