From 17fa5dee65059f6019ace06433765e639d2cd812 Mon Sep 17 00:00:00 2001 From: Chris Michael Date: Thu, 21 Jan 2016 09:22:37 -0500 Subject: [PATCH] ecore-drm: Cleanup ecore-drm shutdown routine This patch addresses an issue where when closing Enlightenment, the shutdown procedure would previously end up calling the same functions twice. These functions should be called from the ecore_evas drm shutdown routine as the sprites, inputs, outputs, etc are all called from the ecore_evas drm init routine. @fix Signed-off-by: Chris Michael --- src/lib/ecore_drm/ecore_drm_device.c | 13 ------------- src/lib/ecore_drm/ecore_drm_launcher.c | 1 + 2 files changed, 1 insertion(+), 13 deletions(-) diff --git a/src/lib/ecore_drm/ecore_drm_device.c b/src/lib/ecore_drm/ecore_drm_device.c index 80cabf3856..a406d5e1ff 100644 --- a/src/lib/ecore_drm/ecore_drm_device.c +++ b/src/lib/ecore_drm/ecore_drm_device.c @@ -266,7 +266,6 @@ out: EAPI void ecore_drm_device_free(Ecore_Drm_Device *dev) { - Ecore_Drm_Output *output; unsigned int i = 0; /* check for valid device */ @@ -277,18 +276,6 @@ ecore_drm_device_free(Ecore_Drm_Device *dev) if (dev->dumb[i]) ecore_drm_fb_destroy(dev->dumb[i]); dev->dumb[i] = NULL; } - /* destroy all sprites*/ - ecore_drm_sprites_destroy(dev); - /* clear inputs */ - ecore_drm_inputs_destroy(dev); - /* free outputs */ - EINA_LIST_FREE(dev->outputs, output) - ecore_drm_output_free(output); - /* disconnect launcher */ - ecore_drm_launcher_disconnect(dev); - /* close myself */ - ecore_drm_device_close(dev); - /* free crtcs */ if (dev->crtcs) free(dev->crtcs); diff --git a/src/lib/ecore_drm/ecore_drm_launcher.c b/src/lib/ecore_drm/ecore_drm_launcher.c index c9e1ce2489..72dd140ab2 100644 --- a/src/lib/ecore_drm/ecore_drm_launcher.c +++ b/src/lib/ecore_drm/ecore_drm_launcher.c @@ -88,6 +88,7 @@ EAPI void ecore_drm_launcher_disconnect(Ecore_Drm_Device *dev) { EINA_SAFETY_ON_NULL_RETURN(dev); + if (dev->tty.switch_hdlr) ecore_event_handler_del(dev->tty.switch_hdlr); dev->tty.switch_hdlr = NULL;