diff options
-rw-r--r-- | chrome/app/chrome_exe_main.mm | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/chrome/app/chrome_exe_main.mm b/chrome/app/chrome_exe_main.mm index 53b546e..5594282 100644 --- a/chrome/app/chrome_exe_main.mm +++ b/chrome/app/chrome_exe_main.mm @@ -1,18 +1,20 @@ -// Copyright (c) 2008 The Chromium Authors. All rights reserved. +// Copyright (c) 2010 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. -// 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 GoogleUpdate. 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. +// The entry point for all Mac Chromium processes, including the outer app +// bundle (browser) and helper app (renderer, plugin, and friends). + +#include <stdlib.h> extern "C" { -int ChromeMain(int argc, const char** argv); +int ChromeMain(int argc, char** argv); } -int main(int argc, const char** argv) { - return ChromeMain(argc, argv); +int main(int argc, char* argv[]) { + int rv = ChromeMain(argc, argv); + + // exit, don't return from main, to avoid the apparent removal of main from + // stack backtraces under tail call optimization. + exit(rv); } |