avoid crash if swRenderInstances are not available

This commit is contained in:
erwincoumans
2017-09-12 17:27:18 -07:00
parent 19057c2004
commit 9d804cfb97

View File

@@ -717,15 +717,18 @@ void TinyRendererVisualShapeConverter::changeRGBAColor(int bodyUniqueId, int lin
if (start>=0)
{
TinyRendererObjectArray** visualArrayPtr = m_data->m_swRenderInstances.getAtIndex(start);
TinyRendererObjectArray* visualArray = *visualArrayPtr;
btHashPtr colObjHash = m_data->m_swRenderInstances.getKeyAtIndex(start);
const btCollisionObject* colObj = (btCollisionObject*) colObjHash.getPointer();
float rgba[4] = {rgbaColor[0], rgbaColor[1], rgbaColor[2], rgbaColor[3]};
for (int v=0;v<visualArray->m_renderObjects.size();v++)
if (visualArrayPtr && *visualArrayPtr)
{
visualArray->m_renderObjects[v]->m_model->setColorRGBA(rgba);
TinyRendererObjectArray* visualArray = *visualArrayPtr;
btHashPtr colObjHash = m_data->m_swRenderInstances.getKeyAtIndex(start);
const btCollisionObject* colObj = (btCollisionObject*) colObjHash.getPointer();
float rgba[4] = {rgbaColor[0], rgbaColor[1], rgbaColor[2], rgbaColor[3]};
for (int v=0;v<visualArray->m_renderObjects.size();v++)
{
visualArray->m_renderObjects[v]->m_model->setColorRGBA(rgba);
}
}
}
}