Dear developer,<br><br>I have been using vtkOpenGLVolumeTextureMapper3D in many programs for some time, but when I updated my VTK version to today&#39;s git clone my renderer began to crash.<br><br>I debugged the error all the way to vtkOpenGLVolumeTextureMapper3D::Initialize() with this code at the beginning of the method:<br>
<br><span style="color: rgb(51, 102, 255);">******************************************************************************************</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">{</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">this-&gt;Initialized = 1;</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">vtkOpenGLExtensionManager * extensions = vtkOpenGLExtensionManager::New();</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">extensions-&gt;SetRenderWindow(NULL); // set render window to the current one.</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">  </span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">int supports_texture3D=extensions-&gt;ExtensionSupported( &quot;GL_VERSION_1_2&quot; );</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">...</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">}</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">******************************************************************************************</span><br>
<br>but found this block within vtkOpenGLExtensionManager::ExtensionSupported:<br><br><span style="color: rgb(51, 102, 255);">******************************************************************************************</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">int vtkOpenGLExtensionManager::ExtensionSupported(const char *name)</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">{</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">...</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">...</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">// Woraround for a nVidia bug in indirect/remote rendering mode (ssh -X)</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">  // The version returns is not the one actually supported.</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">  // For example, the version returns is greater or equal to 2.1</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">  // but where PBO (which are core in 2.1) are not actually supported.</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">  // In this case, force the version to be 1.1 (minimal). Anything above</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">  // will be requested only through extensions.</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">  // See ParaView bug </span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">  if(result &amp;&amp; !this-&gt;RenderWindow-&gt;IsDirect())</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">    {</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">    if (result &amp;&amp; strncmp(name, &quot;GL_VERSION_&quot;,11) == 0)</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">      {</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">      // whatever is the OpenGL version, return false.</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">      // (nobody asks for GL_VERSION_1_1)</span><br style="color: rgb(51, 102, 255);">
<span style="color: rgb(51, 102, 255);">      result=0;</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">      }</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">    }</span><br style="color: rgb(51, 102, 255);">
<br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">....</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">....</span><br style="color: rgb(51, 102, 255);"><span style="color: rgb(51, 102, 255);">}<br>
******************************************************************************************</span><br><br>It crashes because we try to use a method on a NULL pointer (this-&gt;RenderWindow) in the first IF statement.<br>I temporarily fixed the crashing problem by adding &amp;&amp; this-&gt;RenderWindow to the IF statement.<br>
<br>Isaac<br>