aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/effects
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2018-01-26 14:59:12 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-01-26 20:26:20 +0000
commitde5c50268c3ff0af507c0a9b47ab58809b89867c (patch)
tree9753695ccab4221b4c171006754e1c7c22b3ae3d /src/effects
parent9d7a73527a6df7d3523e93a6a1f964df08b94510 (diff)
move checkLE functionality directly onto readbuffer
Bug: skia: Change-Id: I549717f04e2e4cafc41ccbe13009805f47943d5d Reviewed-on: https://skia-review.googlesource.com/99703 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'src/effects')
-rw-r--r--src/effects/SkBlurMaskFilter.cpp12
-rw-r--r--src/effects/SkDisplacementMapEffect.cpp18
-rw-r--r--src/effects/SkDropShadowImageFilter.cpp9
-rw-r--r--src/effects/SkHighContrastFilter.cpp12
-rw-r--r--src/effects/SkLightingImageFilter.cpp11
-rw-r--r--src/effects/SkMatrixConvolutionImageFilter.cpp9
6 files changed, 11 insertions, 60 deletions
diff --git a/src/effects/SkBlurMaskFilter.cpp b/src/effects/SkBlurMaskFilter.cpp
index 866e724190..7992d97d78 100644
--- a/src/effects/SkBlurMaskFilter.cpp
+++ b/src/effects/SkBlurMaskFilter.cpp
@@ -10,7 +10,6 @@
#include "SkGpuBlurUtils.h"
#include "SkMaskFilterBase.h"
#include "SkReadBuffer.h"
-#include "SkSafeRange.h"
#include "SkWriteBuffer.h"
#include "SkMaskFilter.h"
#include "SkRRect.h"
@@ -734,20 +733,13 @@ void SkBlurMaskFilterImpl::computeFastBounds(const SkRect& src,
}
sk_sp<SkFlattenable> SkBlurMaskFilterImpl::CreateProc(SkReadBuffer& buffer) {
- SkSafeRange safe;
-
const SkScalar sigma = buffer.readScalar();
-
- SkBlurStyle style = safe.checkLE(buffer.readUInt(), kLastEnum_SkBlurStyle);
- unsigned flags = safe.checkLE(buffer.readUInt(), SkBlurMaskFilter::kAll_BlurFlag);
+ SkBlurStyle style = buffer.read32LE(kLastEnum_SkBlurStyle);
+ unsigned flags = buffer.read32LE(SkBlurMaskFilter::kAll_BlurFlag);
SkRect occluder;
buffer.readRect(&occluder);
- if (!buffer.validate(safe)) {
- return nullptr;
- }
-
return SkBlurMaskFilter::Make((SkBlurStyle)style, sigma, occluder, flags);
}
diff --git a/src/effects/SkDisplacementMapEffect.cpp b/src/effects/SkDisplacementMapEffect.cpp
index 3fabb4d689..1b055b69a3 100644
--- a/src/effects/SkDisplacementMapEffect.cpp
+++ b/src/effects/SkDisplacementMapEffect.cpp
@@ -11,7 +11,6 @@
#include "SkColorSpaceXformer.h"
#include "SkImageFilterPriv.h"
#include "SkReadBuffer.h"
-#include "SkSafeRange.h"
#include "SkSpecialImage.h"
#include "SkWriteBuffer.h"
#include "SkUnPreMultiply.h"
@@ -147,24 +146,13 @@ SkDisplacementMapEffect::~SkDisplacementMapEffect() {
}
sk_sp<SkFlattenable> SkDisplacementMapEffect::CreateProc(SkReadBuffer& buffer) {
- SkSafeRange safe;
-
SK_IMAGEFILTER_UNFLATTEN_COMMON(common, 2);
- ChannelSelectorType xsel = safe.checkLE<ChannelSelectorType>(buffer.readInt(),
- kLast_ChannelSelectorType);
- ChannelSelectorType ysel = safe.checkLE<ChannelSelectorType>(buffer.readInt(),
- kLast_ChannelSelectorType);
-
+ ChannelSelectorType xsel = buffer.read32LE(kLast_ChannelSelectorType);
+ ChannelSelectorType ysel = buffer.read32LE(kLast_ChannelSelectorType);
SkScalar scale = buffer.readScalar();
- if (!buffer.validate(safe)) {
- return nullptr;
- }
-
- return Make(xsel, ysel, scale,
- common.getInput(0), common.getInput(1),
- &common.cropRect());
+ return Make(xsel, ysel, scale, common.getInput(0), common.getInput(1), &common.cropRect());
}
void SkDisplacementMapEffect::flatten(SkWriteBuffer& buffer) const {
diff --git a/src/effects/SkDropShadowImageFilter.cpp b/src/effects/SkDropShadowImageFilter.cpp
index bd0fb75353..01c99efc9f 100644
--- a/src/effects/SkDropShadowImageFilter.cpp
+++ b/src/effects/SkDropShadowImageFilter.cpp
@@ -12,7 +12,6 @@
#include "SkColorSpaceXformer.h"
#include "SkImageFilterPriv.h"
#include "SkReadBuffer.h"
-#include "SkSafeRange.h"
#include "SkSpecialImage.h"
#include "SkSpecialSurface.h"
#include "SkWriteBuffer.h"
@@ -42,8 +41,6 @@ SkDropShadowImageFilter::SkDropShadowImageFilter(SkScalar dx, SkScalar dy,
}
sk_sp<SkFlattenable> SkDropShadowImageFilter::CreateProc(SkReadBuffer& buffer) {
- SkSafeRange safe;
-
SK_IMAGEFILTER_UNFLATTEN_COMMON(common, 1);
SkScalar dx = buffer.readScalar();
SkScalar dy = buffer.readScalar();
@@ -51,11 +48,7 @@ sk_sp<SkFlattenable> SkDropShadowImageFilter::CreateProc(SkReadBuffer& buffer) {
SkScalar sigmaY = buffer.readScalar();
SkColor color = buffer.readColor();
- ShadowMode shadowMode = safe.checkLE<ShadowMode>(buffer.readInt(), kLast_ShadowMode);
-
- if (!buffer.validate(safe)) {
- return nullptr;
- }
+ ShadowMode shadowMode = buffer.read32LE(kLast_ShadowMode);
return Make(dx, dy, sigmaX, sigmaY, color, shadowMode, common.getInput(0), &common.cropRect());
}
diff --git a/src/effects/SkHighContrastFilter.cpp b/src/effects/SkHighContrastFilter.cpp
index 69cbcd7a9c..d6299f90c4 100644
--- a/src/effects/SkHighContrastFilter.cpp
+++ b/src/effects/SkHighContrastFilter.cpp
@@ -9,7 +9,6 @@
#include "SkPM4f.h"
#include "SkArenaAlloc.h"
#include "SkRasterPipeline.h"
-#include "SkSafeRange.h"
#include "SkReadBuffer.h"
#include "SkString.h"
#include "SkWriteBuffer.h"
@@ -142,24 +141,19 @@ void SkHighContrast_Filter::flatten(SkWriteBuffer& buffer) const {
}
sk_sp<SkFlattenable> SkHighContrast_Filter::CreateProc(SkReadBuffer& buffer) {
- SkSafeRange safe;
-
SkHighContrastConfig config;
config.fGrayscale = buffer.readBool();
- config.fInvertStyle = safe.checkLE<InvertStyle>(buffer.readInt(), InvertStyle::kLast);
+ config.fInvertStyle = buffer.read32LE(InvertStyle::kLast);
config.fContrast = buffer.readScalar();
- if (!buffer.validate(safe)) {
- return nullptr;
- }
-
return SkHighContrastFilter::Make(config);
}
sk_sp<SkColorFilter> SkHighContrastFilter::Make(
const SkHighContrastConfig& config) {
- if (!config.isValid())
+ if (!config.isValid()) {
return nullptr;
+ }
return sk_make_sp<SkHighContrast_Filter>(config);
}
diff --git a/src/effects/SkLightingImageFilter.cpp b/src/effects/SkLightingImageFilter.cpp
index f861a5b9ac..98b0a13245 100644
--- a/src/effects/SkLightingImageFilter.cpp
+++ b/src/effects/SkLightingImageFilter.cpp
@@ -12,7 +12,6 @@
#include "SkImageFilterPriv.h"
#include "SkPoint3.h"
#include "SkReadBuffer.h"
-#include "SkSafeRange.h"
#include "SkSpecialImage.h"
#include "SkTypes.h"
#include "SkWriteBuffer.h"
@@ -1128,15 +1127,7 @@ void SkImageFilterLight::flattenLight(SkWriteBuffer& buffer) const {
}
/*static*/ SkImageFilterLight* SkImageFilterLight::UnflattenLight(SkReadBuffer& buffer) {
- // Read type first.
- SkSafeRange safe;
-
- SkImageFilterLight::LightType type = safe.checkLE<SkImageFilterLight::LightType>(
- buffer.readInt(), SkImageFilterLight::kLast_LightType);
-
- if (!buffer.validate(safe)) {
- return nullptr;
- }
+ SkImageFilterLight::LightType type = buffer.read32LE(SkImageFilterLight::kLast_LightType);
switch (type) {
// Each of these constructors must first call SkLight's, so we'll read the baseclass
diff --git a/src/effects/SkMatrixConvolutionImageFilter.cpp b/src/effects/SkMatrixConvolutionImageFilter.cpp
index 12ecfd87c2..1e58786b4d 100644
--- a/src/effects/SkMatrixConvolutionImageFilter.cpp
+++ b/src/effects/SkMatrixConvolutionImageFilter.cpp
@@ -11,7 +11,6 @@
#include "SkColorSpaceXformer.h"
#include "SkImageFilterPriv.h"
#include "SkReadBuffer.h"
-#include "SkSafeRange.h"
#include "SkSpecialImage.h"
#include "SkWriteBuffer.h"
#include "SkRect.h"
@@ -80,8 +79,6 @@ sk_sp<SkImageFilter> SkMatrixConvolutionImageFilter::Make(const SkISize& kernelS
}
sk_sp<SkFlattenable> SkMatrixConvolutionImageFilter::CreateProc(SkReadBuffer& buffer) {
- SkSafeRange safe;
-
SK_IMAGEFILTER_UNFLATTEN_COMMON(common, 1);
SkISize kernelSize;
@@ -103,13 +100,9 @@ sk_sp<SkFlattenable> SkMatrixConvolutionImageFilter::CreateProc(SkReadBuffer& bu
kernelOffset.fX = buffer.readInt();
kernelOffset.fY = buffer.readInt();
- TileMode tileMode = safe.checkLE<TileMode>(buffer.readInt(), kLast_TileMode);
+ TileMode tileMode = buffer.read32LE(kLast_TileMode);
bool convolveAlpha = buffer.readBool();
- if (!buffer.validate(safe)) {
- return nullptr;
- }
-
return Make(kernelSize, kernel.get(), gain, bias, kernelOffset, tileMode,
convolveAlpha, common.getInput(0), &common.cropRect());
}