}
e_main_ts_end("\tTDM Display Init Done");
+ e_comp_screen->gdevice_fd = -1;
e_comp_screen->fd = -1;
tdm_display_get_fd(e_comp_screen->tdisplay, &fd);
if (fd < 0)
}
if (e_comp_screen->gdevice) gbm_device_destroy(e_comp_screen->gdevice);
+ if (e_comp_screen->gdevice_fd >= 0) close(e_comp_screen->gdevice_fd);
if (e_comp_screen->bufmgr) tbm_bufmgr_deinit(e_comp_screen->bufmgr);
if (e_comp_screen->fd >= 0) close(e_comp_screen->fd);
if (e_comp_screen->hdlr) ecore_main_fd_handler_del(e_comp_screen->hdlr);
EINA_SAFETY_ON_FALSE_RETURN_VAL(fd >= 0, NULL);
e_comp_screen->gdevice = gbm_create_device(fd);
- EINA_SAFETY_ON_NULL_RETURN_VAL(e_comp_screen->gdevice, NULL);
+ if (e_comp_screen->gdevice)
+ {
+ ERR("fail to create gbm device");
+ close(fd);
+ return NULL;
+ }
+
+ e_comp_screen->gdevice_fd = fd;
return e_comp_screen->gdevice;
}