mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-12 14:09:28 +00:00
WINTERMUTE: Fix segfault in Wintermute 3D with shaders
The mesh attributes were accessed before it was loaded.
This commit is contained in:
parent
c952c63b69
commit
8d8ad8f811
@ -52,11 +52,11 @@ XMeshOpenGLShader::~XMeshOpenGLShader() {
|
||||
}
|
||||
|
||||
bool XMeshOpenGLShader::loadFromXData(const Common::String &filename, XFileData *xobj, Common::Array<MaterialReference> &materialReferences) {
|
||||
auto indexData = _skinMesh->_mesh->_indexData;
|
||||
float *vertexData = _skinMesh->_mesh->_vertexData;
|
||||
uint32 vertexCount = _skinMesh->_mesh->_vertexCount;
|
||||
|
||||
if (XMesh::loadFromXData(filename, xobj, materialReferences)) {
|
||||
auto indexData = _skinMesh->_mesh->_indexData;
|
||||
float *vertexData = _skinMesh->_mesh->_vertexData;
|
||||
uint32 vertexCount = _skinMesh->_mesh->_vertexCount;
|
||||
|
||||
glBindBuffer(GL_ARRAY_BUFFER, _vertexBuffer);
|
||||
glBufferData(GL_ARRAY_BUFFER, 4 * XSkinMeshLoader::kVertexComponentCount * vertexCount, vertexData, GL_DYNAMIC_DRAW);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user