Chromium Code Reviews| Index: src/effects/SkMergeImageFilter.cpp |
| diff --git a/src/effects/SkMergeImageFilter.cpp b/src/effects/SkMergeImageFilter.cpp |
| index 0c47c91aff21d73e4da6738682da3d2f7d044657..0f2f5485637beb6ab5b3aa2b951588ce8e458d34 100755 |
| --- a/src/effects/SkMergeImageFilter.cpp |
| +++ b/src/effects/SkMergeImageFilter.cpp |
| @@ -9,6 +9,7 @@ |
| #include "SkCanvas.h" |
| #include "SkDevice.h" |
| #include "SkFlattenableBuffers.h" |
| +#include "SkValidationUtils.h" |
| /////////////////////////////////////////////////////////////////////////////// |
| @@ -157,8 +158,12 @@ SkMergeImageFilter::SkMergeImageFilter(SkFlattenableReadBuffer& buffer) : INHERI |
| bool hasModes = buffer.readBool(); |
| if (hasModes) { |
| this->initAllocModes(); |
| - SkASSERT(buffer.getArrayCount() == countInputs() * sizeof(fModes[0])); |
| + int nbInputs = countInputs(); |
| + SkASSERT(buffer.getArrayCount() == nbInputs * sizeof(fModes[0])); |
|
Stephen White
2013/09/09 17:43:00
Should this also be validated, or is asserting goo
|
| buffer.readByteArray(fModes); |
| + for (int i = 0; i < nbInputs; ++i) { |
| + buffer.validateData(SkIsValidMode((SkXfermode::Mode)fModes[i])); |
| + } |
| } else { |
| fModes = 0; |
| } |