diff --git a/libs/hwui/AssetAtlas.cpp b/libs/hwui/AssetAtlas.cpp index fb5147bc4daa3..366e486db5d90 100644 --- a/libs/hwui/AssetAtlas.cpp +++ b/libs/hwui/AssetAtlas.cpp @@ -65,6 +65,12 @@ void AssetAtlas::terminate() { void AssetAtlas::updateTextureId() { mTexture->id = mImage ? mImage->getTexture() : 0; + if (mTexture->id) { + // Texture ID changed, force-set to defaults to sync the wrapper & GL + // state objects + mTexture->setWrap(GL_CLAMP_TO_EDGE, false, true); + mTexture->setFilter(GL_NEAREST, false, true); + } for (size_t i = 0; i < mEntries.size(); i++) { AssetAtlas::Entry* entry = mEntries.valueAt(i); entry->texture->id = mTexture->id;