Index: cc/scheduler/scheduler.cc |
diff --git a/cc/scheduler/scheduler.cc b/cc/scheduler/scheduler.cc |
index 4224ba07d0b7d3ecc05ce41d8dce238e98ad741f..482a86bf9c29e810eb7ab4966b0cef29c0292230 100644 |
--- a/cc/scheduler/scheduler.cc |
+++ b/cc/scheduler/scheduler.cc |
@@ -390,19 +390,19 @@ bool Scheduler::OnBeginFrameMixInDelegate(const BeginFrameArgs& args) { |
client_->SendBeginFramesToChildren(adjusted_args_for_children); |
} |
+ BeginFrameArgs adjusted_args(args); |
+ adjusted_args.deadline -= EstimatedParentDrawTime(); |
+ |
// We have just called SetNeedsBeginFrame(true) and the BeginFrameSource has |
// sent us the last BeginFrame we have missed. As we might not be able to |
// actually make rendering for this call, handle it like a "retro frame". |
// TODO(brainderson): Add a test for this functionality ASAP! |
- if (args.type == BeginFrameArgs::MISSED) { |
- begin_retro_frame_args_.push_back(args); |
+ if (adjusted_args.type == BeginFrameArgs::MISSED) { |
+ begin_retro_frame_args_.push_back(adjusted_args); |
PostBeginRetroFrameIfNeeded(); |
return true; |
} |
- BeginFrameArgs adjusted_args(args); |
- adjusted_args.deadline -= EstimatedParentDrawTime(); |
- |
bool should_defer_begin_frame; |
if (settings_.using_synchronous_renderer_compositor) { |
should_defer_begin_frame = false; |