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

Side by Side Diff: src/gpu/GrBatchAtlas.cpp

Issue 2354653002: Remove unnecessary assert in GrBatchAtlas. (Closed)
Patch Set: Created 4 years, 3 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 | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2015 Google Inc. 2 * Copyright 2015 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "GrBatchAtlas.h" 8 #include "GrBatchAtlas.h"
9 #include "GrBatchFlushState.h" 9 #include "GrBatchFlushState.h"
10 #include "GrRectanizer.h" 10 #include "GrRectanizer.h"
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 213
214 // If this plot has been used in a draw that is currently being prepared by a batch, then we 214 // If this plot has been used in a draw that is currently being prepared by a batch, then we
215 // have to fail. This gives the batch a chance to enqueue the draw, and call back into this 215 // have to fail. This gives the batch a chance to enqueue the draw, and call back into this
216 // function. When that draw is enqueued, the draw token advances, and the su bsequent call will 216 // function. When that draw is enqueued, the draw token advances, and the su bsequent call will
217 // continue past this branch and prepare an inline upload that will occur af ter the enqueued 217 // continue past this branch and prepare an inline upload that will occur af ter the enqueued
218 // draw which references the plot's pre-upload content. 218 // draw which references the plot's pre-upload content.
219 if (plot->lastUseToken() == target->nextDrawToken()) { 219 if (plot->lastUseToken() == target->nextDrawToken()) {
220 return false; 220 return false;
221 } 221 }
222 222
223 SkASSERT(!plot->unique()); // The GrPlotUpdater should have a ref too
224
225 this->processEviction(plot->id()); 223 this->processEviction(plot->id());
226 fPlotList.remove(plot); 224 fPlotList.remove(plot);
227 SkAutoTUnref<BatchPlot>& newPlot = fPlotArray[plot->index()]; 225 SkAutoTUnref<BatchPlot>& newPlot = fPlotArray[plot->index()];
228 newPlot.reset(plot->clone()); 226 newPlot.reset(plot->clone());
229 227
230 fPlotList.addToHead(newPlot.get()); 228 fPlotList.addToHead(newPlot.get());
231 SkASSERT(GrBytesPerPixel(fTexture->desc().fConfig) == newPlot->bpp()); 229 SkASSERT(GrBytesPerPixel(fTexture->desc().fConfig) == newPlot->bpp());
232 SkDEBUGCODE(bool verify = )newPlot->addSubImage(width, height, image, loc); 230 SkDEBUGCODE(bool verify = )newPlot->addSubImage(width, height, image, loc);
233 SkASSERT(verify); 231 SkASSERT(verify);
234 232
235 // Note that this plot will be uploaded inline with the draws whereas the 233 // Note that this plot will be uploaded inline with the draws whereas the
236 // one it displaced most likely was uploaded asap. 234 // one it displaced most likely was uploaded asap.
237 // With c+14 we could move sk_sp into lamba to only ref once. 235 // With c+14 we could move sk_sp into lamba to only ref once.
238 sk_sp<BatchPlot> plotsp(SkRef(newPlot.get())); 236 sk_sp<BatchPlot> plotsp(SkRef(newPlot.get()));
239 GrTexture* texture = fTexture; 237 GrTexture* texture = fTexture;
240 GrBatchDrawToken lastUploadToken = target->addInlineUpload( 238 GrBatchDrawToken lastUploadToken = target->addInlineUpload(
241 [plotsp, texture] (GrDrawBatch::WritePixelsFn& writePixels) { 239 [plotsp, texture] (GrDrawBatch::WritePixelsFn& writePixels) {
242 plotsp->uploadToTexture(writePixels, texture); 240 plotsp->uploadToTexture(writePixels, texture);
243 } 241 }
244 ); 242 );
245 newPlot->setLastUploadToken(lastUploadToken); 243 newPlot->setLastUploadToken(lastUploadToken);
246 244
247 *id = newPlot->id(); 245 *id = newPlot->id();
248 246
249 fAtlasGeneration++; 247 fAtlasGeneration++;
250 return true; 248 return true;
251 } 249 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698