blob: 41226754f38cd55210d6ac006274f5783704abab [file] [log] [blame]
// Copyright 2013 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "content/shell/app/shell_content_main.h"
#include "base/compiler_specific.h"
#include "build/build_config.h"
#include "content/public/app/content_main.h"
#include "content/public/common/content_switches.h"
#include "content/shell/app/paths_mac.h"
#include "content/shell/app/shell_main_delegate.h"
#if BUILDFLAG(IS_MAC)
int ContentMain(int argc, const char** argv) {
bool is_browsertest = false;
std::string browser_test_flag(std::string("--") + switches::kBrowserTest);
for (int i = 0; i < argc; ++i) {
if (browser_test_flag == UNSAFE_BUFFERS(argv[i])) {
is_browsertest = true;
break;
}
}
content::ShellMainDelegate delegate(is_browsertest);
content::ContentMainParams params(&delegate);
params.argc = argc;
params.argv = argv;
// Ensure that Bundle Id is set before ContentMain.
OverrideFrameworkBundlePath();
OverrideOuterBundlePath();
OverrideChildProcessPath();
OverrideSourceRootPath();
OverrideBundleID();
return content::ContentMain(std::move(params));
}
#endif // BUILDFLAG(IS_MAC)