| Index: src/core/SkXfermode.cpp
|
| diff --git a/src/core/SkXfermode.cpp b/src/core/SkXfermode.cpp
|
| index d0208570c63502475b478b25d5de948305d555f6..0811808d46c3e72813b4c972337b4d662dcf0cee 100644
|
| --- a/src/core/SkXfermode.cpp
|
| +++ b/src/core/SkXfermode.cpp
|
| @@ -823,7 +823,7 @@ public:
|
| }
|
| virtual void emitCode(GrGLShaderBuilder* builder,
|
| const GrDrawEffect& drawEffect,
|
| - EffectKey key,
|
| + const GrEffectKey& key,
|
| const char* outputColor,
|
| const char* inputColor,
|
| const TransformedCoordsArray& coords,
|
| @@ -969,11 +969,13 @@ public:
|
| }
|
| }
|
|
|
| - static inline EffectKey GenKey(const GrDrawEffect& drawEffect, const GrGLCaps&) {
|
| + static inline void GenKey(const GrDrawEffect& drawEffect, const GrGLCaps&,
|
| + GrEffectKeyBuilder* b) {
|
| // The background may come from the dst or from a texture.
|
| - int numTextures = drawEffect.effect()->numTextures();
|
| - SkASSERT(numTextures <= 1);
|
| - return (drawEffect.castEffect<XferEffect>().mode() << 1) | numTextures;
|
| + uint32_t key = drawEffect.effect()->numTextures();
|
| + SkASSERT(key <= 1);
|
| + key |= drawEffect.castEffect<XferEffect>().mode() << 1;
|
| + b->add32(key);
|
| }
|
|
|
| private:
|
|
|