Evas 3d: Fix some potential crashes

Those were happening before the previous patches.
This commit is contained in:
Jean-Philippe Andre 2015-12-29 15:41:51 +09:00
parent 60e6030f36
commit b13502f20a
2 changed files with 21 additions and 18 deletions

View File

@ -189,6 +189,8 @@ _evas_canvas3d_eet_descriptor_shutdown()
void void
_evas_canvas3d_eet_file_free(Evas_Canvas3D_File_Eet* eet_file) _evas_canvas3d_eet_file_free(Evas_Canvas3D_File_Eet* eet_file)
{ {
if (eet_file)
{
if (eet_file->mesh) if (eet_file->mesh)
{ {
free(eet_file->mesh->geometries[0].vertices); free(eet_file->mesh->geometries[0].vertices);
@ -207,7 +209,8 @@ _evas_canvas3d_eet_file_free(Evas_Canvas3D_File_Eet* eet_file)
} }
free(eet_file); free(eet_file);
eet_file = NULL; }
_evas_canvas3d_eet_descriptor_shutdown(); _evas_canvas3d_eet_descriptor_shutdown();
eet_shutdown(); eet_shutdown();
eina_shutdown(); eina_shutdown();

View File

@ -115,9 +115,9 @@ evas_model_load_file_eet(Evas_Canvas3D_Mesh *mesh, Eina_File *file)
eet_close(ef); eet_close(ef);
if ((eet_file->mesh == NULL) || (eet_file->header == NULL)) if (!eet_file || !eet_file->mesh || !eet_file->header)
{ {
ERR("Reading of file is failed."); ERR("Failed to read model file");
_evas_canvas3d_eet_file_free(eet_file); _evas_canvas3d_eet_file_free(eet_file);
return; return;
} }