| Index: ash/test/ash_test_base.cc
|
| diff --git a/ash/test/ash_test_base.cc b/ash/test/ash_test_base.cc
|
| index 0116710690c5ae948386dd52f7e67953a3308077..813f5fe08835baf5d304e391696b485ba54cf1ab 100644
|
| --- a/ash/test/ash_test_base.cc
|
| +++ b/ash/test/ash_test_base.cc
|
| @@ -32,6 +32,7 @@
|
|
|
| #if defined(OS_WIN)
|
| #include "ash/test/test_metro_viewer_process_host.h"
|
| +#include "base/test/test_process_util_win.h"
|
| #include "base/win/windows_version.h"
|
| #include "ui/aura/remote_root_window_host_win.h"
|
| #include "ui/aura/root_window_host_win.h"
|
| @@ -131,11 +132,21 @@ void AshTestBase::TearDown() {
|
| Shell::DeleteInstance();
|
| aura::Env::DeleteInstance();
|
| ui::TextInputTestSupport::Shutdown();
|
| +
|
| #if defined(OS_WIN)
|
| aura::test::SetUsePopupAsRootWindowForTest(false);
|
| // Kill the viewer process if we spun one up.
|
| metro_viewer_host_.reset();
|
| +
|
| + // Clean up any dangling viewer processes as the metro APIs sometimes leave
|
| + // zombies behind. A default browser process in metro will have the
|
| + // following command line arg so use that to avoid killing all processes named
|
| + // win8::test::kDefaultTestExePath.
|
| + const wchar_t kViewerProcessArgument[] = L"DefaultBrowserServer";
|
| + KillAllNamedProcessesWithArgument(win8::test::kDefaultTestExePath,
|
| + kViewerProcessArgument);
|
| #endif
|
| +
|
| event_generator_.reset();
|
| // Some tests set an internal display id,
|
| // reset it here, so other tests will continue in a clean environment.
|
|
|