aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkXfermode.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/SkXfermode.cpp')
-rw-r--r--src/core/SkXfermode.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/core/SkXfermode.cpp b/src/core/SkXfermode.cpp
index 674078ef3a..78b85daa3e 100644
--- a/src/core/SkXfermode.cpp
+++ b/src/core/SkXfermode.cpp
@@ -1079,7 +1079,10 @@ public:
}
static inline EffectKey GenKey(const GrDrawEffect& drawEffect, const GrGLCaps&) {
- return drawEffect.castEffect<XferEffect>().mode();
+ // 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;
}
private: