0
Files
src/content/browser/after_startup_task_utils.cc
Carlos Caballero 72e8a209b5 Add BrowserTaskQueues::EnableAllQueues
After this patch all queues in BrowserTaskQueues will be disabled on
creation and users must explicitly enable them via a call to either
BrowserTaskQueues::EnableAllQueues or
BrowserTaskQueues::EnableAllExceptBestEffortQueues

This will help us ensure the invariant that no tasks will run before
BrowserMainLoop::CreateThreads still holds after we add an IO
scheduler.

Bug: 863341
Change-Id: I07d34ec84e166b12b9ab50448acde7f943f9cbbb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1611979
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Reviewed-by: Alex Clarke <alexclarke@chromium.org>
Commit-Queue: Carlos Caballero <carlscab@google.com>
Cr-Commit-Position: refs/heads/master@{#661772}
2019-05-21 16:51:17 +00:00

28 lines
1.0 KiB
C++

// Copyright 2017 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 "content/browser/after_startup_task_utils.h"
#include "content/browser/scheduler/browser_task_executor.h"
#include "content/public/browser/content_browser_client.h"
#include "content/public/common/content_client.h"
namespace content {
void SetBrowserStartupIsCompleteForTesting() {
content::BrowserTaskExecutor::EnableAllQueues();
// Forward the message to ContentBrowserClient if one is registered (there are
// many tests where one isn't but that's fine as that also means they get the
// default ContentBrowserClient::IsBrowserStartupComplete() which is always
// true).
ContentClient* content_client = GetContentClient();
if (content_client) {
ContentBrowserClient* content_browser_client = content_client->browser();
if (content_browser_client)
content_browser_client->SetBrowserStartupIsCompleteForTesting();
}
}
} // namespace content