Jelajahi Sumber

Fixed an out-of-bounds error

Josh Yelon 20 tahun lalu
induk
melakukan
e5f03b6bf5
1 mengubah file dengan 3 tambahan dan 0 penghapusan
  1. 3 0
      panda/src/glstuff/glShaderContext_src.cxx

+ 3 - 0
panda/src/glstuff/glShaderContext_src.cxx

@@ -359,6 +359,9 @@ update_shader_texture_bindings(CLP(ShaderContext) *prev, GSG *gsg)
         const ShaderInput *input = gsg->_target._shader->get_input(id);
         const ShaderInput *input = gsg->_target._shader->get_input(id);
         tex = input->get_texture();
         tex = input->get_texture();
       } else {
       } else {
+        if (_cg_texbind[i].stage >= gsg->_target._texture->get_num_on_stages()) {
+          continue;
+        }
         TextureStage *stage = gsg->_target._texture->get_on_stage(_cg_texbind[i].stage);
         TextureStage *stage = gsg->_target._texture->get_on_stage(_cg_texbind[i].stage);
         tex = gsg->_target._texture->get_on_texture(stage);
         tex = gsg->_target._texture->get_on_texture(stage);
       }
       }