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

Side by Side Diff: base/debug_on_start.cc

Issue 3945002: Move debug-related stuff from base to the base/debug directory and use the... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 10 years, 2 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
« no previous file with comments | « base/debug/trace_event_win_unittest.cc ('k') | base/debug_util.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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 <windows.h> 5 #include <windows.h>
6 6
7 #include "base/debug_on_start.h" 7 #include "base/debug_on_start.h"
8 8
9 #include "base/base_switches.h" 9 #include "base/base_switches.h"
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "base/debug_util.h" 11 #include "base/debug/debugger.h"
12 12
13 // Minimalist implementation to try to find a command line argument. We can use 13 // Minimalist implementation to try to find a command line argument. We can use
14 // kernel32 exported functions but not the CRT functions because we're too early 14 // kernel32 exported functions but not the CRT functions because we're too early
15 // in the process startup. 15 // in the process startup.
16 // The code is not that bright and will find things like ---argument or 16 // The code is not that bright and will find things like ---argument or
17 // /-/argument. 17 // /-/argument.
18 // Note: command_line is non-destructively modified. 18 // Note: command_line is non-destructively modified.
19 bool DebugOnStart::FindArgument(wchar_t* command_line, const char* argument_c) { 19 bool DebugOnStart::FindArgument(wchar_t* command_line, const char* argument_c) {
20 wchar_t argument[50]; 20 wchar_t argument[50];
21 for (int i = 0; argument_c[i]; ++i) 21 for (int i = 0; argument_c[i]; ++i)
(...skipping 27 matching lines...) Expand all
49 // static 49 // static
50 int __cdecl DebugOnStart::Init() { 50 int __cdecl DebugOnStart::Init() {
51 // Try to find the argument. 51 // Try to find the argument.
52 if (FindArgument(GetCommandLine(), switches::kDebugOnStart)) { 52 if (FindArgument(GetCommandLine(), switches::kDebugOnStart)) {
53 // We can do 2 things here: 53 // We can do 2 things here:
54 // - Ask for a debugger to attach to us. This involve reading the registry 54 // - Ask for a debugger to attach to us. This involve reading the registry
55 // key and creating the process. 55 // key and creating the process.
56 // - Do a int3. 56 // - Do a int3.
57 57
58 // It will fails if we run in a sandbox. That is expected. 58 // It will fails if we run in a sandbox. That is expected.
59 DebugUtil::SpawnDebuggerOnProcess(GetCurrentProcessId()); 59 base::debug::SpawnDebuggerOnProcess(GetCurrentProcessId());
60 60
61 // Wait for a debugger to come take us. 61 // Wait for a debugger to come take us.
62 DebugUtil::WaitForDebugger(60, false); 62 base::debug::WaitForDebugger(60, false);
63 } else if (FindArgument(GetCommandLine(), switches::kWaitForDebugger)) { 63 } else if (FindArgument(GetCommandLine(), switches::kWaitForDebugger)) {
64 // Wait for a debugger to come take us. 64 // Wait for a debugger to come take us.
65 DebugUtil::WaitForDebugger(60, true); 65 base::debug::WaitForDebugger(60, true);
66 } 66 }
67 return 0; 67 return 0;
68 } 68 }
OLDNEW
« no previous file with comments | « base/debug/trace_event_win_unittest.cc ('k') | base/debug_util.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698