Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(299)

Side by Side Diff: chrome/app/chrome_main_delegate.cc

Issue 18254010: IPC fuzzer child process component (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: missed some files Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 #include "chrome/app/chrome_main_delegate.h" 5 #include "chrome/app/chrome_main_delegate.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/lazy_instance.h" 8 #include "base/lazy_instance.h"
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "base/metrics/stats_counters.h" 10 #include "base/metrics/stats_counters.h"
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
99 base::LazyInstance<chrome::ChromeContentUtilityClient> 99 base::LazyInstance<chrome::ChromeContentUtilityClient>
100 g_chrome_content_utility_client = LAZY_INSTANCE_INITIALIZER; 100 g_chrome_content_utility_client = LAZY_INSTANCE_INITIALIZER;
101 base::LazyInstance<chrome::ChromeContentPluginClient> 101 base::LazyInstance<chrome::ChromeContentPluginClient>
102 g_chrome_content_plugin_client = LAZY_INSTANCE_INITIALIZER; 102 g_chrome_content_plugin_client = LAZY_INSTANCE_INITIALIZER;
103 103
104 #if defined(OS_MACOSX) || defined(USE_LINUX_BREAKPAD) 104 #if defined(OS_MACOSX) || defined(USE_LINUX_BREAKPAD)
105 base::LazyInstance<chrome::ChromeBreakpadClient>::Leaky 105 base::LazyInstance<chrome::ChromeBreakpadClient>::Leaky
106 g_chrome_breakpad_client = LAZY_INSTANCE_INITIALIZER; 106 g_chrome_breakpad_client = LAZY_INSTANCE_INITIALIZER;
107 #endif 107 #endif
108 108
109 extern int IpcFuzzerMain(const content::MainFunctionParams&);
Tom Sepez 2013/07/12 18:47:20 #if defined(ENABLE_IPC_FUZZER) around this prototy
aedla 2013/07/15 16:12:08 Done.
109 extern int NaClMain(const content::MainFunctionParams&); 110 extern int NaClMain(const content::MainFunctionParams&);
110 extern int ServiceProcessMain(const content::MainFunctionParams&); 111 extern int ServiceProcessMain(const content::MainFunctionParams&);
111 112
112 namespace { 113 namespace {
113 114
114 #if defined(OS_WIN) 115 #if defined(OS_WIN)
115 const wchar_t kProfilingDll[] = L"memory_watcher.dll"; 116 const wchar_t kProfilingDll[] = L"memory_watcher.dll";
116 117
117 // Load the memory profiling DLL. All it needs to be activated 118 // Load the memory profiling DLL. All it needs to be activated
118 // is to be loaded. Return true on success, false otherwise. 119 // is to be loaded. Return true on success, false otherwise.
(...skipping 522 matching lines...) Expand 10 before | Expand all | Expand 10 after
641 AdjustLinuxOOMScore(process_type); 642 AdjustLinuxOOMScore(process_type);
642 #endif 643 #endif
643 #if defined(OS_WIN) 644 #if defined(OS_WIN)
644 SuppressWindowsErrorDialogs(); 645 SuppressWindowsErrorDialogs();
645 #endif 646 #endif
646 } 647 }
647 648
648 int ChromeMainDelegate::RunProcess( 649 int ChromeMainDelegate::RunProcess(
649 const std::string& process_type, 650 const std::string& process_type,
650 const content::MainFunctionParams& main_function_params) { 651 const content::MainFunctionParams& main_function_params) {
652
653 #if defined(ENABLE_IPC_FUZZER)
654 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kIpcFuzzerOverride))
655 return IpcFuzzerMain(main_function_params);
656 #endif
657
651 // ANDROID doesn't support "service", so no ServiceProcessMain, and arraysize 658 // ANDROID doesn't support "service", so no ServiceProcessMain, and arraysize
652 // doesn't support empty array. So we comment out the block for Android. 659 // doesn't support empty array. So we comment out the block for Android.
653 #if !defined(OS_ANDROID) 660 #if !defined(OS_ANDROID)
654 static const MainFunction kMainFunctions[] = { 661 static const MainFunction kMainFunctions[] = {
655 { switches::kServiceProcess, ServiceProcessMain }, 662 { switches::kServiceProcess, ServiceProcessMain },
656 #if defined(OS_MACOSX) 663 #if defined(OS_MACOSX)
657 { switches::kRelauncherProcess, 664 { switches::kRelauncherProcess,
658 mac_relauncher::internal::RelauncherMain }, 665 mac_relauncher::internal::RelauncherMain },
659 #endif 666 #endif
660 // TODO(scottmg): http://crbug.com/237249 NaCl -> child. 667 // TODO(scottmg): http://crbug.com/237249 NaCl -> child.
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
739 746
740 content::ContentRendererClient* 747 content::ContentRendererClient*
741 ChromeMainDelegate::CreateContentRendererClient() { 748 ChromeMainDelegate::CreateContentRendererClient() {
742 return &g_chrome_content_renderer_client.Get(); 749 return &g_chrome_content_renderer_client.Get();
743 } 750 }
744 751
745 content::ContentUtilityClient* 752 content::ContentUtilityClient*
746 ChromeMainDelegate::CreateContentUtilityClient() { 753 ChromeMainDelegate::CreateContentUtilityClient() {
747 return &g_chrome_content_utility_client.Get(); 754 return &g_chrome_content_utility_client.Get();
748 } 755 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698