diff options
| author | Antonis Geralis <[email protected]> | 2021-12-24 21:54:25 +0300 |
|---|---|---|
| committer | GitHub <[email protected]> | 2021-12-24 19:54:25 +0100 |
| commit | dcc079150239de4603a89b106b12012d901e4462 (patch) | |
| tree | b0b0f5d7221a381223ae66ebfed463aef6e993cc | |
| parent | f66ae2366f3abf58f63dbe1f719a2cd33cccf1ca (diff) | |
| download | raylib-dcc079150239de4603a89b106b12012d901e4462.tar.gz raylib-dcc079150239de4603a89b106b12012d901e4462.zip | |
check not null before accessing by index (#2243)
| -rw-r--r-- | src/rmodels.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/rmodels.c b/src/rmodels.c index 04bba197..3ee3a470 100644 --- a/src/rmodels.c +++ b/src/rmodels.c @@ -1624,7 +1624,7 @@ void UnloadMesh(Mesh mesh) // Unload rlgl mesh vboId data rlUnloadVertexArray(mesh.vaoId); - for (int i = 0; i < MAX_MESH_VERTEX_BUFFERS; i++) rlUnloadVertexBuffer(mesh.vboId[i]); + if (mesh.vboId != NULL) for (int i = 0; i < MAX_MESH_VERTEX_BUFFERS; i++) rlUnloadVertexBuffer(mesh.vboId[i]); RL_FREE(mesh.vboId); RL_FREE(mesh.vertices); @@ -1787,9 +1787,12 @@ void UnloadMaterial(Material material) if (material.shader.id != rlGetShaderIdDefault()) UnloadShader(material.shader); // Unload loaded texture maps (avoid unloading default texture, managed by raylib) - for (int i = 0; i < MAX_MATERIAL_MAPS; i++) + if (material.maps != NULL) { - if (material.maps[i].texture.id != rlGetTextureIdDefault()) rlUnloadTexture(material.maps[i].texture.id); + for (int i = 0; i < MAX_MATERIAL_MAPS; i++) + { + if (material.maps[i].texture.id != rlGetTextureIdDefault()) rlUnloadTexture(material.maps[i].texture.id); + } } RL_FREE(material.maps); |
