Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(405)

Unified Diff: cc/raster/one_copy_tile_task_worker_pool.cc

Issue 1866043006: cc: Remove ScheduleOnOriginThread() and CompleteOnOriginThread(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: nits Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/raster/one_copy_tile_task_worker_pool.cc
diff --git a/cc/raster/one_copy_tile_task_worker_pool.cc b/cc/raster/one_copy_tile_task_worker_pool.cc
index 47e4c01c5a6ddb37f1513c1311f4cb402d7e97ac..cd1fd06931bad5b9fd65bb9275a21fdabbd4239c 100644
--- a/cc/raster/one_copy_tile_task_worker_pool.cc
+++ b/cc/raster/one_copy_tile_task_worker_pool.cc
@@ -128,8 +128,6 @@ void OneCopyTileTaskWorkerPool::Shutdown() {
void OneCopyTileTaskWorkerPool::ScheduleTasks(TaskGraph* graph) {
TRACE_EVENT0("cc", "OneCopyTileTaskWorkerPool::ScheduleTasks");
- ScheduleTasksOnOriginThread(this, graph);
-
// Barrier to sync any new resources to the worker context.
resource_provider_->output_surface()
->context_provider()
@@ -139,21 +137,11 @@ void OneCopyTileTaskWorkerPool::ScheduleTasks(TaskGraph* graph) {
task_graph_runner_->ScheduleTasks(namespace_token_, graph);
}
-void OneCopyTileTaskWorkerPool::CheckForCompletedTasks() {
- TRACE_EVENT0("cc", "OneCopyTileTaskWorkerPool::CheckForCompletedTasks");
-
- task_graph_runner_->CollectCompletedTasks(namespace_token_,
- &completed_tasks_);
+void OneCopyTileTaskWorkerPool::CollectCompletedTasks(
+ Task::Vector* completed_tasks) {
+ TRACE_EVENT0("cc", "OneCopyTileTaskWorkerPool::CollectCompletedTasks");
- for (Task::Vector::const_iterator it = completed_tasks_.begin();
- it != completed_tasks_.end(); ++it) {
- TileTask* task = static_cast<TileTask*>(it->get());
-
- task->WillComplete();
- task->CompleteOnOriginThread(this);
- task->DidComplete();
- }
- completed_tasks_.clear();
+ task_graph_runner_->CollectCompletedTasks(namespace_token_, completed_tasks);
}
ResourceFormat OneCopyTileTaskWorkerPool::GetResourceFormat(
@@ -172,6 +160,10 @@ bool OneCopyTileTaskWorkerPool::GetResourceRequiresSwizzle(
return ResourceFormatRequiresSwizzle(GetResourceFormat(must_support_alpha));
}
+TileTaskClient* OneCopyTileTaskWorkerPool::AsTileTaskClient() {
+ return this;
+}
+
std::unique_ptr<RasterBuffer> OneCopyTileTaskWorkerPool::AcquireBufferForRaster(
const Resource* resource,
uint64_t resource_content_id,
@@ -270,6 +262,8 @@ void OneCopyTileTaskWorkerPool::CopyOnWorkerThread(
const RasterSource* raster_source,
uint64_t previous_content_id,
uint64_t new_content_id) {
+ DCHECK(resource->size().width() && resource->size().height());
prashant.n 2016/04/12 15:57:45 With width = 0, it will cause divide by zero crash
+
ContextProvider* context_provider =
resource_provider_->output_surface()->worker_context_provider();
DCHECK(context_provider);

Powered by Google App Engine
This is Rietveld 408576698