Chromium Code Reviews| Index: cc/scheduler/scheduler_state_machine.cc |
| diff --git a/cc/scheduler/scheduler_state_machine.cc b/cc/scheduler/scheduler_state_machine.cc |
| index 01252dd7aff1c21a0330eb5c9598a567658a6eb1..3dce1426923c3962f8b68677ad75f909bdab4486 100644 |
| --- a/cc/scheduler/scheduler_state_machine.cc |
| +++ b/cc/scheduler/scheduler_state_machine.cc |
| @@ -430,7 +430,14 @@ void SchedulerStateMachine::SetHasPendingTree(bool has_pending_tree) { |
| void SchedulerStateMachine::SetCanDraw(bool can) { can_draw_ = can; } |
| void SchedulerStateMachine::DidCreateAndInitializeOutputSurface() { |
| - DCHECK_EQ(output_surface_state_, OUTPUT_SURFACE_CREATING); |
| + DCHECK(output_surface_state_ == OUTPUT_SURFACE_CREATING || |
| + output_surface_state_ == OUTPUT_SURFACE_ACTIVE); |
| + |
| + // This can be called from LayerTreeHost::DeferredInitialize while an output |
|
danakj
2013/06/05 21:53:32
Pretty sure LTH isn't calling the scheduler :)
|
| + // surface is already active. |
|
danakj
2013/06/05 21:53:32
nit: double space
|
| + if (output_surface_state_ == OUTPUT_SURFACE_ACTIVE) |
| + return; |
| + |
| output_surface_state_ = OUTPUT_SURFACE_ACTIVE; |
| if (did_create_and_initialize_first_output_surface_) { |