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

Side by Side Diff: chrome/browser/renderer_host/browser_render_process_host.cc

Issue 296004: Use GetSwitchValueASCII. (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: '' Created 11 years, 1 month 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 | « chrome/browser/plugin_service.cc ('k') | chrome/browser/sessions/session_restore.cc » ('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) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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 // Represents the browser side of the browser <--> renderer communication 5 // Represents the browser side of the browser <--> renderer communication
6 // channel. There will be one RenderProcessHost per renderer process. 6 // channel. There will be one RenderProcessHost per renderer process.
7 7
8 #include "chrome/browser/renderer_host/browser_render_process_host.h" 8 #include "chrome/browser/renderer_host/browser_render_process_host.h"
9 9
10 #include "build/build_config.h" 10 #include "build/build_config.h"
(...skipping 437 matching lines...) Expand 10 before | Expand all | Expand 10 after
448 const std::string locale = g_browser_process->GetApplicationLocale(); 448 const std::string locale = g_browser_process->GetApplicationLocale();
449 command_line->AppendSwitchWithValue(switches::kLang, ASCIIToWide(locale)); 449 command_line->AppendSwitchWithValue(switches::kLang, ASCIIToWide(locale));
450 450
451 // If we run FieldTrials, we want to pass to their state to the renderer so 451 // If we run FieldTrials, we want to pass to their state to the renderer so
452 // that it can act in accordance with each state, or record histograms 452 // that it can act in accordance with each state, or record histograms
453 // relating to the FieldTrial states. 453 // relating to the FieldTrial states.
454 std::string field_trial_states; 454 std::string field_trial_states;
455 FieldTrialList::StatesToString(&field_trial_states); 455 FieldTrialList::StatesToString(&field_trial_states);
456 if (!field_trial_states.empty()) { 456 if (!field_trial_states.empty()) {
457 command_line->AppendSwitchWithValue(switches::kForceFieldTestNameAndValue, 457 command_line->AppendSwitchWithValue(switches::kForceFieldTestNameAndValue,
458 ASCIIToWide(field_trial_states)); 458 field_trial_states);
459 } 459 }
460 460
461 // A command prefix is something prepended to the command line of the spawned 461 // A command prefix is something prepended to the command line of the spawned
462 // process. It is supported only on POSIX systems. 462 // process. It is supported only on POSIX systems.
463 #if defined(OS_POSIX) 463 #if defined(OS_POSIX)
464 *has_cmd_prefix = 464 *has_cmd_prefix =
465 browser_command_line.HasSwitch(switches::kRendererCmdPrefix); 465 browser_command_line.HasSwitch(switches::kRendererCmdPrefix);
466 if (*has_cmd_prefix) { 466 if (*has_cmd_prefix) {
467 // launch the renderer child with some prefix (usually "gdb --args") 467 // launch the renderer child with some prefix (usually "gdb --args")
468 const std::wstring prefix = 468 const std::wstring prefix =
469 browser_command_line.GetSwitchValue(switches::kRendererCmdPrefix); 469 browser_command_line.GetSwitchValue(switches::kRendererCmdPrefix);
470 command_line->PrependWrapper(prefix); 470 command_line->PrependWrapper(prefix);
471 } 471 }
472 #else 472 #else
473 *has_cmd_prefix = false; 473 *has_cmd_prefix = false;
474 #endif // defined(OS_POSIX) 474 #endif // defined(OS_POSIX)
475 475
476 ChildProcessHost::SetCrashReporterCommandLine(command_line); 476 ChildProcessHost::SetCrashReporterCommandLine(command_line);
477 477
478 const std::wstring& profile_path = 478 const std::string& profile_path =
479 browser_command_line.GetSwitchValue(switches::kUserDataDir); 479 browser_command_line.GetSwitchValueASCII(switches::kUserDataDir);
480 if (!profile_path.empty()) 480 if (!profile_path.empty())
481 command_line->AppendSwitchWithValue(switches::kUserDataDir, profile_path); 481 command_line->AppendSwitchWithValue(switches::kUserDataDir, profile_path);
482 } 482 }
483 483
484 void BrowserRenderProcessHost::PropogateBrowserCommandLineToRenderer( 484 void BrowserRenderProcessHost::PropogateBrowserCommandLineToRenderer(
485 const CommandLine& browser_cmd, 485 const CommandLine& browser_cmd,
486 CommandLine* renderer_cmd) const { 486 CommandLine* renderer_cmd) const {
487 // Propagate the following switches to the renderer command line (along 487 // Propagate the following switches to the renderer command line (along
488 // with any associated values) if present in the browser command line. 488 // with any associated values) if present in the browser command line.
489 static const char* const switch_names[] = { 489 static const char* const switch_names[] = {
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
534 switches::kChromeFrame, 534 switches::kChromeFrame,
535 #if defined(OS_MACOSX) 535 #if defined(OS_MACOSX)
536 // Allow this to be set when invoking the browser and relayed along. 536 // Allow this to be set when invoking the browser and relayed along.
537 switches::kEnableSandboxLogging, 537 switches::kEnableSandboxLogging,
538 #endif 538 #endif
539 }; 539 };
540 540
541 for (size_t i = 0; i < arraysize(switch_names); ++i) { 541 for (size_t i = 0; i < arraysize(switch_names); ++i) {
542 if (browser_cmd.HasSwitch(switch_names[i])) { 542 if (browser_cmd.HasSwitch(switch_names[i])) {
543 renderer_cmd->AppendSwitchWithValue(switch_names[i], 543 renderer_cmd->AppendSwitchWithValue(switch_names[i],
544 browser_cmd.GetSwitchValue(switch_names[i])); 544 browser_cmd.GetSwitchValueASCII(switch_names[i]));
545 } 545 }
546 } 546 }
547 } 547 }
548 548
549 #if defined(OS_WIN) 549 #if defined(OS_WIN)
550 550
551 base::ProcessHandle BrowserRenderProcessHost::ExecuteRenderer( 551 base::ProcessHandle BrowserRenderProcessHost::ExecuteRenderer(
552 CommandLine* cmd_line, 552 CommandLine* cmd_line,
553 bool has_cmd_prefix) { 553 bool has_cmd_prefix) {
554 return sandbox::StartProcess(cmd_line); 554 return sandbox::StartProcess(cmd_line);
(...skipping 485 matching lines...) Expand 10 before | Expand all | Expand 10 after
1040 profile()->GetExtensionMessageService()->RemoveEventListener( 1040 profile()->GetExtensionMessageService()->RemoveEventListener(
1041 event_name, id()); 1041 event_name, id());
1042 } 1042 }
1043 } 1043 }
1044 1044
1045 void BrowserRenderProcessHost::OnExtensionCloseChannel(int port_id) { 1045 void BrowserRenderProcessHost::OnExtensionCloseChannel(int port_id) {
1046 if (profile()->GetExtensionMessageService()) { 1046 if (profile()->GetExtensionMessageService()) {
1047 profile()->GetExtensionMessageService()->CloseChannel(port_id); 1047 profile()->GetExtensionMessageService()->CloseChannel(port_id);
1048 } 1048 }
1049 } 1049 }
OLDNEW
« no previous file with comments | « chrome/browser/plugin_service.cc ('k') | chrome/browser/sessions/session_restore.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698