A team using Celestia at Spacebel reported a crash when viewing certain meshes on Intel GPUs. They tracked the problem to changelist 4958, and from there I was able to determine the cause and find a fix. I committed the fix yesterday: it's a one line change to modelgeometry.cpp that resets the current vertex buffer to 0 after a new vertex buffer is created. Without this change the last created vertex buffer is left active, and subsequent calls to glDrawElements may cause out of range vertex accesses. ATI and NVIDIA drivers/hardware--at least on Windows--are tolerant of this, Intel is not. Regardless, the original code was incorrect.

This bug may have been responsible for crashes on non-Intel GPUs on Linux or Mac, and it could have caused rendering glitches as well as crashes. The fix is not required for 1.6.1, because the change that introduced the bug occurred after 1.6.1 branched.

--Chris