e_hwc_windows: set wait commit flag to FALSE if pp zoom unsetted
authorJunkyeong Kim <jk0430.kim@samsung.com>
Fri, 7 Feb 2020 10:12:40 +0000 (19:12 +0900)
committerSung-Jin Park <sj76.park@samsung.com>
Fri, 7 Feb 2020 10:54:03 +0000 (19:54 +0900)
Change-Id: I09f537b82abd83cf47eee7e55561b88d17356651
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
src/bin/e_hwc_windows.c

index a884eff5e38866720e83526077627d94495237fd..2407d9d16997805a7629fbbfc7a0dcfea015080d 100644 (file)
@@ -1462,12 +1462,30 @@ _e_hwc_windows_pp_commit_handler(tdm_pp *pp, tbm_surface_h tsurface_src, tbm_sur
    EHWSTRACE("!!!!!!!! HWC PP Commit Handler !!!!!!!!", NULL, hwc);
    EHWSTRACE("   tsurface src(%p) dst(%p)", NULL, hwc, tsurface_src, tsurface_dst);
 
+   /* if pp_set is false, skip the commit */
+   if (!hwc->pp_set)
+     {
+        if (hwc->tpp)
+          {
+             tdm_pp_destroy(hwc->tpp);
+             hwc->tpp = NULL;
+          }
+
+        hwc->wait_commit = EINA_FALSE;
+        hwc->pp_commit = EINA_FALSE;
+
+        goto done;
+     }
+
    output = hwc->output;
    if (e_output_dpms_get(output))
      {
         _e_hwc_windows_pp_pending_data_remove(hwc);
         tbm_surface_queue_release(hwc->pp_tqueue, tsurface_dst);
 
+        hwc->wait_commit = EINA_FALSE;
+        hwc->pp_commit = EINA_FALSE;
+
         goto done;
      }