Ticket #9800 (closed defect: fixed)
Crash in VBoxOGLpackspu.so when using glInterleavedArrays
|Reported by:||philiptaylor||Owned by:|
Description (last modified by misha) (diff)
When running the game 0 A.D. and starting a match, it crashes inside the guest with
Program received signal SIGSEGV, Segmentation fault. 0x00007fffc75e8f86 in ?? () from /usr/lib/VBoxOGLpackspu.so (gdb) bt #0 0x00007fffc75e8f86 in ?? () from /usr/lib/VBoxOGLpackspu.so #1 0x00007fffc75be86b in crPackExpandArrayElement () from /usr/lib/VBoxOGLpackspu.so #2 0x00007fffc75bea10 in crPackExpandDrawArrays () from /usr/lib/VBoxOGLpackspu.so #3 0x00000000006b9653 in CMiniMap::Draw (this=0x7fffca6f02f0) at ../../../source/gui/MiniMap.cpp:404
where source/gui/MiniMap.cpp is doing
glInterleavedArrays(GL_C4UB_V2F, sizeof(MinimapUnitVertex), &vertexArray); glDrawArrays(GL_POINTS, 0, (GLsizei)vertexArray.size()); glDisableClientState(GL_COLOR_ARRAY); glDisableClientState(GL_VERTEX_ARRAY);
I changed the game in http://trac.wildfiregames.com/changeset/10419 to explicitly perform equivalent behaviour to glInterleavedArrays, which stops it from crashing, suggesting a possible problem with glInterleavedArrays.
I think I have the latest version of Guest Additions installed, though I'm not sure how to verify that. I haven't tried setting up a minimised test case for this bug.