diff --git a/src/libANGLE/Context.inl.h b/src/libANGLE/Context.inl.h
index 96e9b02..486e3eb 100644
--- a/src/libANGLE/Context.inl.h
+++ b/src/libANGLE/Context.inl.h
@@ -46,16 +46,26 @@
     }
 }
 
-ANGLE_INLINE void MarkShaderStorageBufferUsage(const Context *context)
+ANGLE_INLINE void MarkShaderStorageUsage(const Context *context)
 {
     for (size_t index : context->getStateCache().getActiveShaderStorageBufferIndices())
     {
-        gl::Buffer *buffer = context->getState().getIndexedShaderStorageBuffer(index).get();
+        Buffer *buffer = context->getState().getIndexedShaderStorageBuffer(index).get();
         if (buffer)
         {
             buffer->onDataChanged();
         }
     }
+
+    for (size_t index : context->getStateCache().getActiveImageUnitIndices())
+    {
+        const ImageUnit &imageUnit = context->getState().getImageUnit(index);
+        const Texture *texture     = imageUnit.texture.get();
+        if (texture)
+        {
+            texture->onStateChange(angle::SubjectMessage::ContentsChanged);
+        }
+    }
 }
 
 // Return true if the draw is a no-op, else return false.
