| Index: src/gpu/gl/GrGpuGL.cpp
|
| diff --git a/src/gpu/gl/GrGpuGL.cpp b/src/gpu/gl/GrGpuGL.cpp
|
| index 4b5221c31b52f68f6f1af05923c0fb850098afbe..7ab4bc1fcb0ca76d87071a34f9ee89e27eb69bfd 100644
|
| --- a/src/gpu/gl/GrGpuGL.cpp
|
| +++ b/src/gpu/gl/GrGpuGL.cpp
|
| @@ -2028,11 +2028,14 @@ void GrGpuGL::bindTexture(int unitIdx, const GrTextureParams& params, GrGLTextur
|
| GR_GL_LINEAR,
|
| GR_GL_LINEAR
|
| };
|
| - newTexParams.fMinFilter = glMinFilterModes[params.filterMode()];
|
| - newTexParams.fMagFilter = glMagFilterModes[params.filterMode()];
|
| + GrTextureParams::FilterMode filterMode = params.filterMode();
|
| + if (!this->caps()->mipMapSupport() && GrTextureParams::kMipMap_FilterMode == filterMode) {
|
| + filterMode = GrTextureParams::kBilerp_FilterMode;
|
| + }
|
| + newTexParams.fMinFilter = glMinFilterModes[filterMode];
|
| + newTexParams.fMagFilter = glMagFilterModes[filterMode];
|
|
|
| - if (params.filterMode() == GrTextureParams::kMipMap_FilterMode &&
|
| - texture->mipMapsAreDirty()) {
|
| + if (GrTextureParams::kMipMap_FilterMode == filterMode && texture->mipMapsAreDirty()) {
|
| // GL_CALL(Hint(GR_GL_GENERATE_MIPMAP_HINT,GR_GL_NICEST));
|
| GL_CALL(GenerateMipmap(GR_GL_TEXTURE_2D));
|
| texture->dirtyMipMaps(false);
|
|
|