Index: chrome/installer/setup/setup_main.cc |
diff --git a/chrome/installer/setup/setup_main.cc b/chrome/installer/setup/setup_main.cc |
index 69a2e93067e13be8ce73ed33769c15509ef00898..2562be0823834d3ce13bf9d6b7e10409e77473cd 100644 |
--- a/chrome/installer/setup/setup_main.cc |
+++ b/chrome/installer/setup/setup_main.cc |
@@ -1673,6 +1673,12 @@ InstallStatus InstallProductsHelper( |
int WINAPI wWinMain(HINSTANCE instance, HINSTANCE prev_instance, |
wchar_t* command_line, int show_command) { |
+ // Check to see if the CPU is supported before doing anything else. There's |
+ // very little than can safely be accomplished if the CPU isn't supported |
+ // since dependent libraries (e.g., base) may use invalid instructions. |
+ if (!installer::IsProcessorSupported()) |
+ return installer::CPU_NOT_SUPPORTED; |
+ |
// The exit manager is in charge of calling the dtors of singletons. |
base::AtExitManager exit_manager; |
CommandLine::Init(0, NULL); |