diff options
Diffstat (limited to 'chrome/app/chrome_exe_main.mm')
-rw-r--r-- | chrome/app/chrome_exe_main.mm | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/chrome/app/chrome_exe_main.mm b/chrome/app/chrome_exe_main.mm new file mode 100644 index 0000000..1eed9a6 --- /dev/null +++ b/chrome/app/chrome_exe_main.mm @@ -0,0 +1,31 @@ +// Copyright (c) 2008 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include <Cocoa/Cocoa.h> + +#include "base/at_exit.h" +#include "base/process_util.h" + +// The entry point for all invocations of Chromium, browser and renderer. On +// windows, this does nothing but load chrome.dll and invoke its entry point +// in order to make it easy to update the app from Omaha. We don't need +// that extra layer with Keystone on the Mac, though we may run into issues +// with Keychain prompts unless we sign the application. That shouldn't be +// too hard, we just need infrastructure support to do it. + +int main(int argc, const char** argv) { + base::EnableTerminationOnHeapCorruption(); + + // The exit manager is in charge of calling the dtors of singletons. + base::AtExitManager exit_manager; + + // TODO(pinkerton): init crash reporter + + // TODO(pinkerton): factor out chrome_dll_main so we can call ChromeMain + // to determine if we're a browser or a renderer. To bootstrap, assume we're + // a browser. There's actually very little in chrome_exe_main.cc that's + // worth saving, it's almost entirely windows-specific. + + return NSApplicationMain(argc, argv); +} |