|
@@ -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);
|