Chromium Code Reviews| Index: chrome/browser/browser_main_win.cc |
| diff --git a/chrome/browser/browser_main_win.cc b/chrome/browser/browser_main_win.cc |
| index 6616894cb9000ac82fc79d0c13d9cbc1f54bc9c4..00b648225e04e1a86c6a0a55827fbb23988a0b4d 100644 |
| --- a/chrome/browser/browser_main_win.cc |
| +++ b/chrome/browser/browser_main_win.cc |
| @@ -146,6 +146,22 @@ void PrepareRestartOnCrashEnviroment(const CommandLine &parsed_command_line) { |
| env->SetVar(env_vars::kRestartInfo, UTF16ToUTF8(dlg_strings)); |
| } |
| +void RegisterApplicationRestart(const CommandLine &parsed_command_line) { |
| + // Rebuild the CommandLine without the program for Windows Restart Manager. |
|
Ben Goodger (Google)
2011/02/10 16:56:49
Rather than say what the code does, say why, e.g.
msw
2011/02/10 18:35:06
Done.
|
| + CommandLine command_line(CommandLine::NO_PROGRAM); |
| + command_line.AppendSwitches(parsed_command_line); |
| + command_line.AppendArgs(parsed_command_line); |
| + // Ensure restore last session is set. |
| + if (!command_line.HasSwitch(switches::kRestoreLastSession)) |
| + command_line.AppendSwitch(switches::kRestoreLastSession); |
| + PCWSTR command_line_string = command_line.command_line_string().c_str(); |
| + // Restart Chrome if the computer is restarted as the result of an update. |
| + // This could be extended to handle crashes, hangs, and patches. |
| + HRESULT hr = ::RegisterApplicationRestart(command_line_string, |
| + RESTART_NO_CRASH | RESTART_NO_HANG | RESTART_NO_PATCH); |
|
Ben Goodger (Google)
2011/02/10 16:56:49
I am OK with this if cpu is OK :-)
msw
2011/02/10 18:35:06
Yeah, we may want to handle crashes, hangs, and pa
|
| + DCHECK(SUCCEEDED(hr)) << "RegisterApplicationRestart failed."; |
| +} |
| + |
| // This method handles the --hide-icons and --show-icons command line options |
| // for chrome that get triggered by Windows from registry entries |
| // HideIconsCommand & ShowIconsCommand. Chrome doesn't support hide icons |