e_hwc_windows: release commit data if pp commit failed 72/224372/2
authorJunkyeong Kim <jk0430.kim@samsung.com>
Mon, 10 Feb 2020 06:28:47 +0000 (15:28 +0900)
committerSooChan Lim <sc1.lim@samsung.com>
Tue, 11 Feb 2020 08:38:15 +0000 (08:38 +0000)
Change-Id: I9071b300028a077a79874d1d45e54fa21dda634e
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
src/bin/e_hwc_windows.c

index 5548f76..628ccff 100644 (file)
@@ -1509,6 +1509,10 @@ fail:
    tbm_surface_queue_release(hwc->pp_tqueue, data->buffer.tsurface);
    E_FREE(data);
 
+   _e_hwc_windows_commit_data_release(hwc, 0, 0, 0);
+   hwc->wait_commit = EINA_FALSE;
+   hwc->pp_commit = EINA_FALSE;
+
    return EINA_FALSE;
 }
 
@@ -1585,7 +1589,7 @@ _e_hwc_windows_pp_commit_handler(tdm_pp *pp, tbm_surface_h tsurface_src, tbm_sur
              tdm_pp_destroy(hwc->tpp);
              hwc->tpp = NULL;
           }
-
+        _e_hwc_windows_commit_data_release(hwc, 0, 0, 0);
         hwc->wait_commit = EINA_FALSE;
         hwc->pp_commit = EINA_FALSE;
 
@@ -1597,6 +1601,7 @@ _e_hwc_windows_pp_commit_handler(tdm_pp *pp, tbm_surface_h tsurface_src, tbm_sur
      {
         _e_hwc_windows_pp_pending_data_remove(hwc);
         tbm_surface_queue_release(hwc->pp_tqueue, tsurface_dst);
+        _e_hwc_windows_commit_data_release(hwc, 0, 0, 0);
 
         hwc->wait_commit = EINA_FALSE;
         hwc->pp_commit = EINA_FALSE;