ecore-drm: do not attempt to destroy sprite outputs which have never repainted
authorMike Blumenkrantz <zmike@osg.samsung.com>
Fri, 1 Apr 2016 19:54:37 +0000 (15:54 -0400)
committerMike Blumenkrantz <zmike@osg.samsung.com>
Fri, 1 Apr 2016 19:55:41 +0000 (15:55 -0400)
silences a surprisingly large number of errors on shutdown

@fix

src/lib/ecore_drm/ecore_drm_sprites.c

index e8d807c..bcc6669 100644 (file)
@@ -94,10 +94,13 @@ ecore_drm_sprites_destroy(Ecore_Drm_Device *dev)
 
    EINA_LIST_FREE(dev->sprites, sprite)
      {
-        ecore_drm_sprites_fb_set(sprite, 0, 0);
+        if (sprite->output)
+          {
+             ecore_drm_sprites_fb_set(sprite, 0, 0);
 
-        _ecore_drm_output_fb_release(sprite->output, sprite->current_fb);
-        _ecore_drm_output_fb_release(sprite->output, sprite->next_fb);
+             _ecore_drm_output_fb_release(sprite->output, sprite->current_fb);
+             _ecore_drm_output_fb_release(sprite->output, sprite->next_fb);
+          }
 
         free(sprite);
      }