diff options
author | krasin <krasin@google.com> | 2015-12-10 11:53:01 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-12-10 19:54:41 +0000 |
commit | 6f7d86825b5f5e146b8e45a7e72eebd6d33a5c35 (patch) | |
tree | f1d2ab9d2e72ef8c8d5fecf70dbf3c850b8b87d6 /cc | |
parent | 4626ac3123ef9c7a139b815429d15d4c7ded7e36 (diff) | |
download | chromium_src-6f7d86825b5f5e146b8e45a7e72eebd6d33a5c35.zip chromium_src-6f7d86825b5f5e146b8e45a7e72eebd6d33a5c35.tar.gz chromium_src-6f7d86825b5f5e146b8e45a7e72eebd6d33a5c35.tar.bz2 |
Fix invalid cast in tile_manager_perftest.
Use TileTask instead of RasterTask, because TaskSetFinishedTaskImpl
could be there as well. The bug was found by Control Flow Integrity check,
and is similar to two previously fixed bugs:
https://codereview.chromium.org/1494273002/
https://codereview.chromium.org/1248923002
BUG=568407,457523
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel
Review URL: https://codereview.chromium.org/1515843002
Cr-Commit-Position: refs/heads/master@{#364441}
Diffstat (limited to 'cc')
-rw-r--r-- | cc/tiles/tile_manager_perftest.cc | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/cc/tiles/tile_manager_perftest.cc b/cc/tiles/tile_manager_perftest.cc index 87709f4..2806b04 100644 --- a/cc/tiles/tile_manager_perftest.cc +++ b/cc/tiles/tile_manager_perftest.cc @@ -40,7 +40,7 @@ class FakeTileTaskRunnerImpl : public TileTaskRunner, public TileTaskClient { void Shutdown() override {} void ScheduleTasks(TaskGraph* graph) override { for (auto& node : graph->nodes) { - RasterTask* task = static_cast<RasterTask*>(node.task); + TileTask* task = static_cast<TileTask*>(node.task); task->WillSchedule(); task->ScheduleOnOriginThread(this); @@ -50,10 +50,9 @@ class FakeTileTaskRunnerImpl : public TileTaskRunner, public TileTaskClient { } } void CheckForCompletedTasks() override { - for (RasterTask::Vector::iterator it = completed_tasks_.begin(); - it != completed_tasks_.end(); - ++it) { - RasterTask* task = it->get(); + for (TileTask::Vector::iterator it = completed_tasks_.begin(); + it != completed_tasks_.end(); ++it) { + TileTask* task = it->get(); task->WillComplete(); task->CompleteOnOriginThread(this); @@ -79,7 +78,7 @@ class FakeTileTaskRunnerImpl : public TileTaskRunner, public TileTaskClient { void ReleaseBufferForRaster(scoped_ptr<RasterBuffer> buffer) override {} private: - RasterTask::Vector completed_tasks_; + TileTask::Vector completed_tasks_; }; base::LazyInstance<FakeTileTaskRunnerImpl> g_fake_tile_task_runner = LAZY_INSTANCE_INITIALIZER; |