diff options
-rw-r--r-- | chrome_frame/chrome_frame_helper_main.cc | 1 | ||||
-rw-r--r-- | chrome_frame/test_utils.cc | 8 |
2 files changed, 8 insertions, 1 deletions
diff --git a/chrome_frame/chrome_frame_helper_main.cc b/chrome_frame/chrome_frame_helper_main.cc index 0b6bc73..2f36916 100644 --- a/chrome_frame/chrome_frame_helper_main.cc +++ b/chrome_frame/chrome_frame_helper_main.cc @@ -162,5 +162,6 @@ int APIENTRY wWinMain(HINSTANCE hinstance, HINSTANCE, wchar_t*, int show_cmd) { } } + UnregisterClass(kChromeFrameHelperWindowClassName, hinstance); return 0; } diff --git a/chrome_frame/test_utils.cc b/chrome_frame/test_utils.cc index 14149ab..0634d47 100644 --- a/chrome_frame/test_utils.cc +++ b/chrome_frame/test_utils.cc @@ -180,7 +180,13 @@ ScopedChromeFrameRegistrar::~ScopedChromeFrameRegistrar() { RegisterChromeFrameAtPath(original_dll_path_); } else if (registration_type_ == PER_USER) { UnregisterAtPath(new_chrome_frame_dll_path_, registration_type_); - chrome_frame_test::KillProcesses(L"chrome_frame_helper.exe", 0, false); + HWND chrome_frame_helper_window = + FindWindow(L"ChromeFrameHelperWindowClass", NULL); + if (IsWindow(chrome_frame_helper_window)) { + PostMessage(chrome_frame_helper_window, WM_CLOSE, 0, 0); + } else { + chrome_frame_test::KillProcesses(L"chrome_frame_helper.exe", 0, false); + } } } |