| OLD | NEW | 
|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 // chrome_tab.cc : Implementation of DLL Exports. | 5 // chrome_tab.cc : Implementation of DLL Exports. | 
| 6 | 6 | 
| 7 // Need to include this before the ATL headers below. | 7 // Need to include this before the ATL headers below. | 
| 8 #include "chrome_frame/chrome_tab.h" | 8 #include "chrome_frame/chrome_tab.h" | 
| 9 | 9 | 
| 10 #include <atlsecurity.h> | 10 #include <atlsecurity.h> | 
| (...skipping 10 matching lines...) Expand all  Loading... | 
| 21 #include "base/string16.h" | 21 #include "base/string16.h" | 
| 22 #include "base/string_number_conversions.h" | 22 #include "base/string_number_conversions.h" | 
| 23 #include "base/string_piece.h" | 23 #include "base/string_piece.h" | 
| 24 #include "base/string_util.h" | 24 #include "base/string_util.h" | 
| 25 #include "base/sys_string_conversions.h" | 25 #include "base/sys_string_conversions.h" | 
| 26 #include "base/utf_string_conversions.h" | 26 #include "base/utf_string_conversions.h" | 
| 27 #include "base/win/registry.h" | 27 #include "base/win/registry.h" | 
| 28 #include "base/win/windows_version.h" | 28 #include "base/win/windows_version.h" | 
| 29 #include "chrome/common/chrome_constants.h" | 29 #include "chrome/common/chrome_constants.h" | 
| 30 #include "chrome/common/chrome_switches.h" | 30 #include "chrome/common/chrome_switches.h" | 
|  | 31 #include "chrome/common/metrics/entropy_provider.h" | 
| 31 #include "chrome/installer/util/google_update_settings.h" | 32 #include "chrome/installer/util/google_update_settings.h" | 
| 32 #include "chrome_frame/bho.h" | 33 #include "chrome_frame/bho.h" | 
| 33 #include "chrome_frame/chrome_active_document.h" | 34 #include "chrome_frame/chrome_active_document.h" | 
| 34 #include "chrome_frame/chrome_frame_activex.h" | 35 #include "chrome_frame/chrome_frame_activex.h" | 
| 35 #include "chrome_frame/chrome_frame_automation.h" | 36 #include "chrome_frame/chrome_frame_automation.h" | 
| 36 #include "chrome_frame/chrome_frame_reporting.h" | 37 #include "chrome_frame/chrome_frame_reporting.h" | 
| 37 #include "chrome_frame/chrome_launcher_utils.h" | 38 #include "chrome_frame/chrome_launcher_utils.h" | 
| 38 #include "chrome_frame/chrome_protocol.h" | 39 #include "chrome_frame/chrome_protocol.h" | 
| 39 #include "chrome_frame/dll_redirector.h" | 40 #include "chrome_frame/dll_redirector.h" | 
| 40 #include "chrome_frame/exception_barrier.h" | 41 #include "chrome_frame/exception_barrier.h" | 
| (...skipping 812 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 853       DCHECK(g_dll_get_class_object_redir_ptr != NULL) | 854       DCHECK(g_dll_get_class_object_redir_ptr != NULL) | 
| 854           << "Found CF module with no DllGetClassObject export."; | 855           << "Found CF module with no DllGetClassObject export."; | 
| 855     } | 856     } | 
| 856 | 857 | 
| 857     // Enable trace control and transport through event tracing for Windows. | 858     // Enable trace control and transport through event tracing for Windows. | 
| 858     logging::LogEventProvider::Initialize(kChromeFrameProvider); | 859     logging::LogEventProvider::Initialize(kChromeFrameProvider); | 
| 859 | 860 | 
| 860     // Initialize the field test infrastructure. Must be done somewhere that | 861     // Initialize the field test infrastructure. Must be done somewhere that | 
| 861     // can only get called once. For Chrome Frame, that is here. | 862     // can only get called once. For Chrome Frame, that is here. | 
| 862     g_field_trial_list = new base::FieldTrialList( | 863     g_field_trial_list = new base::FieldTrialList( | 
| 863         MetricsService::GetClientID()); | 864         new metrics::SHA1EntropyProvider(MetricsService::GetClientID())); | 
| 864   } else if (reason == DLL_PROCESS_DETACH) { | 865   } else if (reason == DLL_PROCESS_DETACH) { | 
| 865     delete g_field_trial_list; | 866     delete g_field_trial_list; | 
| 866     g_field_trial_list = NULL; | 867     g_field_trial_list = NULL; | 
| 867 | 868 | 
| 868     DllRedirector* dll_redirector = DllRedirector::GetInstance(); | 869     DllRedirector* dll_redirector = DllRedirector::GetInstance(); | 
| 869     DCHECK(dll_redirector); | 870     DCHECK(dll_redirector); | 
| 870     dll_redirector->UnregisterAsFirstCFModule(); | 871     dll_redirector->UnregisterAsFirstCFModule(); | 
| 871 | 872 | 
| 872     g_patch_helper.UnpatchIfNeeded(); | 873     g_patch_helper.UnpatchIfNeeded(); | 
| 873 | 874 | 
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 938   HRESULT hr = CustomRegistration(ALL, FALSE, false); | 939   HRESULT hr = CustomRegistration(ALL, FALSE, false); | 
| 939   return hr; | 940   return hr; | 
| 940 } | 941 } | 
| 941 | 942 | 
| 942 // Object entries go here instead of with each object, so that we can move | 943 // Object entries go here instead of with each object, so that we can move | 
| 943 // the objects to a lib. Also reduces magic. | 944 // the objects to a lib. Also reduces magic. | 
| 944 OBJECT_ENTRY_AUTO(CLSID_ChromeFrameBHO, Bho) | 945 OBJECT_ENTRY_AUTO(CLSID_ChromeFrameBHO, Bho) | 
| 945 OBJECT_ENTRY_AUTO(__uuidof(ChromeActiveDocument), ChromeActiveDocument) | 946 OBJECT_ENTRY_AUTO(__uuidof(ChromeActiveDocument), ChromeActiveDocument) | 
| 946 OBJECT_ENTRY_AUTO(__uuidof(ChromeFrame), ChromeFrameActivex) | 947 OBJECT_ENTRY_AUTO(__uuidof(ChromeFrame), ChromeFrameActivex) | 
| 947 OBJECT_ENTRY_AUTO(__uuidof(ChromeProtocol), ChromeProtocol) | 948 OBJECT_ENTRY_AUTO(__uuidof(ChromeProtocol), ChromeProtocol) | 
| OLD | NEW | 
|---|