diff --git a/Rendering/VolumeOpenGL2/vtkOpenGLGPUVolumeRayCastMapper.cxx b/Rendering/VolumeOpenGL2/vtkOpenGLGPUVolumeRayCastMapper.cxx
index 6087f8adb430ad55c0be1334c469257908e83c8a..de98d78bad7eed4ac6a11af14710dd1cd6baaab9 100644
--- a/Rendering/VolumeOpenGL2/vtkOpenGLGPUVolumeRayCastMapper.cxx
+++ b/Rendering/VolumeOpenGL2/vtkOpenGLGPUVolumeRayCastMapper.cxx
@@ -2859,6 +2859,9 @@ bool vtkOpenGLGPUVolumeRayCastMapper::vtkInternal::UpdateInputs(vtkRenderer* ren
       // Update vtkVolumeTexture
       it->second.Texture->UpdateVolume(property);
     }
+
+    // Volume may have changed, so make sure the helper updates its reference to it.
+    it->second.Volume = vol;
   }
 
   if (orderChanged)