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

Side by Side Diff: cc/surfaces/compositor_frame_sink_support.cc

Issue 2855723002: Don't submit frames with no render passes in cc tests (Closed)
Patch Set: c Created 3 years, 7 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 unified diff | Download patch
« no previous file with comments | « no previous file | cc/surfaces/compositor_frame_sink_support_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/surfaces/compositor_frame_sink_support.h" 5 #include "cc/surfaces/compositor_frame_sink_support.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <utility> 8 #include <utility>
9 9
10 #include "cc/output/compositor_frame.h" 10 #include "cc/output/compositor_frame.h"
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 // |has_damage| is not transmitted, but false by default. 113 // |has_damage| is not transmitted, but false by default.
114 DCHECK(!ack.has_damage); 114 DCHECK(!ack.has_damage);
115 if (begin_frame_source_) 115 if (begin_frame_source_)
116 begin_frame_source_->DidFinishFrame(this, ack); 116 begin_frame_source_->DidFinishFrame(this, ack);
117 } 117 }
118 118
119 void CompositorFrameSinkSupport::SubmitCompositorFrame( 119 void CompositorFrameSinkSupport::SubmitCompositorFrame(
120 const LocalSurfaceId& local_surface_id, 120 const LocalSurfaceId& local_surface_id,
121 CompositorFrame frame) { 121 CompositorFrame frame) {
122 DCHECK(surface_factory_); 122 DCHECK(surface_factory_);
123 ++ack_pending_count_;
124
125 DCHECK_GE(frame.metadata.begin_frame_ack.sequence_number, 123 DCHECK_GE(frame.metadata.begin_frame_ack.sequence_number,
126 BeginFrameArgs::kStartingFrameNumber); 124 BeginFrameArgs::kStartingFrameNumber);
125 DCHECK(!frame.render_pass_list.empty());
126
127 ++ack_pending_count_;
127 128
128 // |has_damage| is not transmitted. 129 // |has_damage| is not transmitted.
129 frame.metadata.begin_frame_ack.has_damage = true; 130 frame.metadata.begin_frame_ack.has_damage = true;
130 131
131 BeginFrameAck ack = frame.metadata.begin_frame_ack; 132 BeginFrameAck ack = frame.metadata.begin_frame_ack;
132 surface_factory_->SubmitCompositorFrame( 133 surface_factory_->SubmitCompositorFrame(
133 local_surface_id, std::move(frame), 134 local_surface_id, std::move(frame),
134 base::Bind(&CompositorFrameSinkSupport::DidReceiveCompositorFrameAck, 135 base::Bind(&CompositorFrameSinkSupport::DidReceiveCompositorFrameAck,
135 weak_factory_.GetWeakPtr()), 136 weak_factory_.GetWeakPtr()),
136 base::BindRepeating(&CompositorFrameSinkSupport::WillDrawSurface, 137 base::BindRepeating(&CompositorFrameSinkSupport::WillDrawSurface,
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 begin_frame_source_->RemoveObserver(this); 263 begin_frame_source_->RemoveObserver(this);
263 } 264 }
264 265
265 void CompositorFrameSinkSupport::RequestCopyOfSurface( 266 void CompositorFrameSinkSupport::RequestCopyOfSurface(
266 std::unique_ptr<CopyOutputRequest> request) { 267 std::unique_ptr<CopyOutputRequest> request) {
267 DCHECK(surface_factory_); 268 DCHECK(surface_factory_);
268 surface_factory_->RequestCopyOfSurface(std::move(request)); 269 surface_factory_->RequestCopyOfSurface(std::move(request));
269 } 270 }
270 271
271 } // namespace cc 272 } // namespace cc
OLDNEW
« no previous file with comments | « no previous file | cc/surfaces/compositor_frame_sink_support_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698