From: yurys@chromium.org Date: Wed, 28 Apr 2010 09:18:53 +0000 (+0000) Subject: Fix test-debug: make sure debugger is unloaded before running next test X-Git-Tag: upstream/4.7.83~21922 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9a9a268756f08062fa921494978d9f2abd94d5f1;p=platform%2Fupstream%2Fv8.git Fix test-debug: make sure debugger is unloaded before running next test Review URL: http://codereview.chromium.org/1704015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4527 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- diff --git a/src/debug.h b/src/debug.h index 19a694a..e7ac94e 100644 --- a/src/debug.h +++ b/src/debug.h @@ -670,6 +670,7 @@ class Debugger { // Unload the debugger if possible. Only called when no debugger is currently // active. static void UnloadDebugger(); + friend void ForceUnloadDebugger(); // In test-debug.cc inline static bool EventActive(v8::DebugEvent event) { ScopedLock with(debugger_access_); diff --git a/test/cctest/test-debug.cc b/test/cctest/test-debug.cc index a7ab0dc..e2ed157 100644 --- a/test/cctest/test-debug.cc +++ b/test/cctest/test-debug.cc @@ -436,6 +436,12 @@ void CheckDebuggerUnloaded(bool check_functions) { } +void ForceUnloadDebugger() { + Debugger::never_unload_debugger_ = false; + Debugger::UnloadDebugger(); +} + + } } // namespace v8::internal @@ -6146,5 +6152,8 @@ TEST(DebugContextIsPreservedBetweenAccesses) { v8::Local context1 = v8::Debug::GetDebugContext(); v8::Local context2 = v8::Debug::GetDebugContext(); CHECK_EQ(*context1, *context2); + // Make sure debugger is unloaded before running other tests. + v8::internal::ForceUnloadDebugger(); + CheckDebuggerUnloaded(); }