Index: src/gpu/GrPipelineBuilder.cpp |
diff --git a/src/gpu/GrPipelineBuilder.cpp b/src/gpu/GrPipelineBuilder.cpp |
index 04967a780b50b9e9e59796fb232aed73e71116b7..512d9e6bea31b409016322015b118eb2fe78c506 100644 |
--- a/src/gpu/GrPipelineBuilder.cpp |
+++ b/src/gpu/GrPipelineBuilder.cpp |
@@ -27,11 +27,11 @@ GrPipelineBuilder::GrPipelineBuilder(const GrPaint& paint, bool targetHasUnified |
SkDEBUGCODE(fBlockEffectRemovalCnt = 0;) |
for (int i = 0; i < paint.numColorFragmentProcessors(); ++i) { |
- fColorFragmentProcessors.push_back(SkRef(paint.getColorFragmentProcessor(i))); |
+ fColorFragmentProcessors.emplace_back(SkRef(paint.getColorFragmentProcessor(i))); |
} |
for (int i = 0; i < paint.numCoverageFragmentProcessors(); ++i) { |
- fCoverageFragmentProcessors.push_back(SkRef(paint.getCoverageFragmentProcessor(i))); |
+ fCoverageFragmentProcessors.emplace_back(SkRef(paint.getCoverageFragmentProcessor(i))); |
} |
fXPFactory.reset(SkSafeRef(paint.getXPFactory())); |
@@ -59,17 +59,12 @@ void GrPipelineBuilder::AutoRestoreFragmentProcessorState::set( |
if (fPipelineBuilder) { |
int m = fPipelineBuilder->numColorFragmentProcessors() - fColorEffectCnt; |
SkASSERT(m >= 0); |
- for (int i = 0; i < m; ++i) { |
- fPipelineBuilder->fColorFragmentProcessors.fromBack(i)->unref(); |
- } |
fPipelineBuilder->fColorFragmentProcessors.pop_back_n(m); |
int n = fPipelineBuilder->numCoverageFragmentProcessors() - fCoverageEffectCnt; |
SkASSERT(n >= 0); |
- for (int i = 0; i < n; ++i) { |
- fPipelineBuilder->fCoverageFragmentProcessors.fromBack(i)->unref(); |
- } |
fPipelineBuilder->fCoverageFragmentProcessors.pop_back_n(n); |
+ |
SkDEBUGCODE(--fPipelineBuilder->fBlockEffectRemovalCnt;) |
} |
fPipelineBuilder = const_cast<GrPipelineBuilder*>(pipelineBuilder); |
@@ -84,10 +79,4 @@ void GrPipelineBuilder::AutoRestoreFragmentProcessorState::set( |
GrPipelineBuilder::~GrPipelineBuilder() { |
SkASSERT(0 == fBlockEffectRemovalCnt); |
- for (int i = 0; i < fColorFragmentProcessors.count(); ++i) { |
- fColorFragmentProcessors[i]->unref(); |
- } |
- for (int i = 0; i < fCoverageFragmentProcessors.count(); ++i) { |
- fCoverageFragmentProcessors[i]->unref(); |
- } |
} |