summaryrefslogtreecommitdiff
path: root/src/lib/ecore_drm
diff options
context:
space:
mode:
authorChris Michael <cpmichael@osg.samsung.com>2016-01-21 09:22:37 -0500
committerChris Michael <cpmichael@osg.samsung.com>2016-01-21 09:22:37 -0500
commit17fa5dee65059f6019ace06433765e639d2cd812 (patch)
tree7db138b7480e3e73a65c24eb6084c10ebdaa5617 /src/lib/ecore_drm
parent258639a92e678512c2dd7dc17d24cc6242e2cb58 (diff)
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 <cpmichael@osg.samsung.com>
Diffstat (limited to 'src/lib/ecore_drm')
-rw-r--r--src/lib/ecore_drm/ecore_drm_device.c13
-rw-r--r--src/lib/ecore_drm/ecore_drm_launcher.c1
2 files changed, 1 insertions, 13 deletions
diff --git a/src/lib/ecore_drm/ecore_drm_device.c b/src/lib/ecore_drm/ecore_drm_device.c
index 80cabf3..a406d5e 100644
--- a/src/lib/ecore_drm/ecore_drm_device.c
+++ b/src/lib/ecore_drm/ecore_drm_device.c
@@ -266,7 +266,6 @@ out:
266EAPI void 266EAPI void
267ecore_drm_device_free(Ecore_Drm_Device *dev) 267ecore_drm_device_free(Ecore_Drm_Device *dev)
268{ 268{
269 Ecore_Drm_Output *output;
270 unsigned int i = 0; 269 unsigned int i = 0;
271 270
272 /* check for valid device */ 271 /* check for valid device */
@@ -277,18 +276,6 @@ ecore_drm_device_free(Ecore_Drm_Device *dev)
277 if (dev->dumb[i]) ecore_drm_fb_destroy(dev->dumb[i]); 276 if (dev->dumb[i]) ecore_drm_fb_destroy(dev->dumb[i]);
278 dev->dumb[i] = NULL; 277 dev->dumb[i] = NULL;
279 } 278 }
280 /* destroy all sprites*/
281 ecore_drm_sprites_destroy(dev);
282 /* clear inputs */
283 ecore_drm_inputs_destroy(dev);
284 /* free outputs */
285 EINA_LIST_FREE(dev->outputs, output)
286 ecore_drm_output_free(output);
287 /* disconnect launcher */
288 ecore_drm_launcher_disconnect(dev);
289 /* close myself */
290 ecore_drm_device_close(dev);
291
292 279
293 /* free crtcs */ 280 /* free crtcs */
294 if (dev->crtcs) free(dev->crtcs); 281 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 c9e1ce2..72dd140 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
88ecore_drm_launcher_disconnect(Ecore_Drm_Device *dev) 88ecore_drm_launcher_disconnect(Ecore_Drm_Device *dev)
89{ 89{
90 EINA_SAFETY_ON_NULL_RETURN(dev); 90 EINA_SAFETY_ON_NULL_RETURN(dev);
91
91 if (dev->tty.switch_hdlr) ecore_event_handler_del(dev->tty.switch_hdlr); 92 if (dev->tty.switch_hdlr) ecore_event_handler_del(dev->tty.switch_hdlr);
92 dev->tty.switch_hdlr = NULL; 93 dev->tty.switch_hdlr = NULL;
93 94