| Index: cc/scheduler/begin_frame_source.cc
|
| diff --git a/cc/scheduler/begin_frame_source.cc b/cc/scheduler/begin_frame_source.cc
|
| index 714f505037b230186cd85245f8f87f9b1b372ad9..f2076e4b5457722af841cc248aef770d60fa6b66 100644
|
| --- a/cc/scheduler/begin_frame_source.cc
|
| +++ b/cc/scheduler/begin_frame_source.cc
|
| @@ -364,7 +364,11 @@ void ExternalBeginFrameSource::AddObserver(BeginFrameObserver* obs) {
|
| last_args.sequence_number))
|
| << "current " << missed_begin_frame_args_.AsValue()->ToString()
|
| << ", last " << last_args.AsValue()->ToString();
|
| - obs->OnBeginFrame(missed_begin_frame_args_);
|
| + // Avoid issuing missed BeginFrames with a past deadline.
|
| + if (missed_begin_frame_args_.deadline.is_null() ||
|
| + missed_begin_frame_args_.deadline > Now()) {
|
| + obs->OnBeginFrame(missed_begin_frame_args_);
|
| + }
|
| }
|
| }
|
| }
|
| @@ -442,4 +446,8 @@ void ExternalBeginFrameSource::FinishFrame() {
|
| client_->OnDidFinishFrame(ack);
|
| }
|
|
|
| +base::TimeTicks ExternalBeginFrameSource::Now() const {
|
| + return base::TimeTicks::Now();
|
| +}
|
| +
|
| } // namespace cc
|
|
|