
This is a reland of commit 235af46635
Reason for revert:
LUCI Bisection has identified this change as the cause of a test failure. See the analysis: https://ci.chromium.org/ui/p/chromium/bisection/test-analysis/b/5650878292819968
Fix: initialize TraceEventHandle to 0 to avoid
MemorySanitizer: use-of-uninitialized-value error
Original change's description:
> [tracing] Cleanup up trace_log
>
> This CL cleans up some of the unused functionalities in trace_log
> - legacy metadata
> - member AddTraceEvent* function: replaced by static ones
> - SetTrackDescriptor: covered by TrackNameRecorder
> We no longer update SetTrackDescriptor on UpdateProcessLabel;
> this is unnecessary because TrackNameRecorder calls
> SetTrackDescriptor when the session ends.
>
> Bug: 343404899
> Change-Id: Ia3c4524cd3b3dd4d4ad12a0348e60480b5d03f67
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6120057
> Reviewed-by: Derek Schuff <dschuff@chromium.org>
> Reviewed-by: Gabriel Charette <gab@chromium.org>
> Reviewed-by: Alexander Timin <altimin@chromium.org>
> Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org>
> Reviewed-by: Mikhail Khokhlov <khokhlov@google.com>
> Cr-Commit-Position: refs/heads/main@{#1403710}
Bug: 343404899
Change-Id: Icb14722297b39f3b8fc7be0985452182a7b5846f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6163823
Reviewed-by: Alexander Timin <altimin@chromium.org>
Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org>
Reviewed-by: Mikhail Khokhlov <khokhlov@google.com>
Reviewed-by: Derek Schuff <dschuff@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1404225}
47 lines
1.4 KiB
C++
47 lines
1.4 KiB
C++
// Copyright 2012 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/browser/browser_main.h"
|
|
|
|
#include <memory>
|
|
|
|
#include "base/debug/alias.h"
|
|
#include "base/process/current_process.h"
|
|
#include "base/time/time.h"
|
|
#include "base/trace_event/trace_event.h"
|
|
#include "content/browser/browser_main_runner_impl.h"
|
|
#include "content/common/content_constants_internal.h"
|
|
|
|
namespace content {
|
|
|
|
// Main routine for running as the Browser process.
|
|
int BrowserMain(MainFunctionParams parameters) {
|
|
TRACE_EVENT_INSTANT0("startup", "BrowserMain", TRACE_EVENT_SCOPE_THREAD);
|
|
|
|
base::CurrentProcess::GetInstance().SetProcessType(
|
|
base::CurrentProcessType::PROCESS_BROWSER);
|
|
|
|
std::unique_ptr<BrowserMainRunnerImpl> main_runner(
|
|
BrowserMainRunnerImpl::Create());
|
|
|
|
int exit_code = main_runner->Initialize(std::move(parameters));
|
|
if (exit_code >= 0)
|
|
return exit_code;
|
|
|
|
exit_code = main_runner->Run();
|
|
|
|
// Record the time shutdown started in convenient units. This can be compared
|
|
// to times stored in places like ReportThreadHang() and
|
|
// TaskAnnotator::RunTaskImpl() when analyzing hangs.
|
|
const int64_t shutdown_time =
|
|
base::TimeTicks::Now().since_origin().InSeconds();
|
|
base::debug::Alias(&shutdown_time);
|
|
|
|
main_runner->Shutdown();
|
|
|
|
return exit_code;
|
|
}
|
|
|
|
} // namespace content
|