diff options
author | herb <herb@google.com> | 2015-12-18 09:52:15 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-12-18 09:52:15 -0800 |
commit | c7a784cc8cb1c1dfcd39a32b2170ffe547904e9f (patch) | |
tree | a4ae39c648dc78dd2562730828e2996d2b03de99 /src/core/SkBitmapProcState_shaderproc.h | |
parent | 3e6be16e6d4dda6a27f0e1dbfe7c87fecfbf5577 (diff) |
Fix UB function problems for shaders and mask.
BUG=skia:4634
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1530743002
Committed: https://skia.googlesource.com/skia/+/dafd044e4aea529f88d899247678d4549f776388
Review URL: https://codereview.chromium.org/1530743002
Diffstat (limited to 'src/core/SkBitmapProcState_shaderproc.h')
-rw-r--r-- | src/core/SkBitmapProcState_shaderproc.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/SkBitmapProcState_shaderproc.h b/src/core/SkBitmapProcState_shaderproc.h index 94b2d3b48c..b1fdc5f056 100644 --- a/src/core/SkBitmapProcState_shaderproc.h +++ b/src/core/SkBitmapProcState_shaderproc.h @@ -12,11 +12,12 @@ // Can't be static in the general case because some of these implementations // will be defined and referenced in different object files. -void SCALE_FILTER_NAME(const SkBitmapProcState& s, int x, int y, +void SCALE_FILTER_NAME(const void* sIn, int x, int y, DSTTYPE* SK_RESTRICT colors, int count); -void SCALE_FILTER_NAME(const SkBitmapProcState& s, int x, int y, +void SCALE_FILTER_NAME(const void* sIn, int x, int y, DSTTYPE* SK_RESTRICT colors, int count) { + const SkBitmapProcState& s = *static_cast<const SkBitmapProcState*>(sIn); SkASSERT((s.fInvType & ~(SkMatrix::kTranslate_Mask | SkMatrix::kScale_Mask)) == 0); SkASSERT(s.fInvKy == 0); |