summaryrefslogtreecommitdiff
path: root/src/lib/ecore_drm
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2016-04-01 15:54:37 -0400
committerMike Blumenkrantz <zmike@osg.samsung.com>2016-04-01 15:55:41 -0400
commitc854b91c5ace6daa104d5c2af0d6926a7aa9ca08 (patch)
tree3ba73c0b3d08a2dd1be69f79c050408ab6700395 /src/lib/ecore_drm
parent5713463ff378cbb6e18504d930f0237ef8a14499 (diff)
ecore-drm: do not attempt to destroy sprite outputs which have never repainted
silences a surprisingly large number of errors on shutdown @fix
Diffstat (limited to 'src/lib/ecore_drm')
-rw-r--r--src/lib/ecore_drm/ecore_drm_sprites.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/lib/ecore_drm/ecore_drm_sprites.c b/src/lib/ecore_drm/ecore_drm_sprites.c
index e8d807c..bcc6669 100644
--- a/src/lib/ecore_drm/ecore_drm_sprites.c
+++ b/src/lib/ecore_drm/ecore_drm_sprites.c
@@ -94,10 +94,13 @@ ecore_drm_sprites_destroy(Ecore_Drm_Device *dev)
94 94
95 EINA_LIST_FREE(dev->sprites, sprite) 95 EINA_LIST_FREE(dev->sprites, sprite)
96 { 96 {
97 ecore_drm_sprites_fb_set(sprite, 0, 0); 97 if (sprite->output)
98 {
99 ecore_drm_sprites_fb_set(sprite, 0, 0);
98 100
99 _ecore_drm_output_fb_release(sprite->output, sprite->current_fb); 101 _ecore_drm_output_fb_release(sprite->output, sprite->current_fb);
100 _ecore_drm_output_fb_release(sprite->output, sprite->next_fb); 102 _ecore_drm_output_fb_release(sprite->output, sprite->next_fb);
103 }
101 104
102 free(sprite); 105 free(sprite);
103 } 106 }