swapchain_tpl: Added handling error case when acquire next buffer. 81/161981/1
authorjoonbum.ko <joonbum.ko@samsung.com>
Tue, 14 Nov 2017 02:10:17 +0000 (11:10 +0900)
committerjoonbum.ko <joonbum.ko@samsung.com>
Tue, 14 Nov 2017 02:11:36 +0000 (11:11 +0900)
Change-Id: I99b87e0185e3801cf4c06cdfce3fd3dfecb1b465
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
src/wsi/swapchain_tpl.c

index 9612fae..909c38c 100644 (file)
@@ -57,14 +57,15 @@ swapchain_tpl_acquire_next_image(VkDevice                    device,
 {
        vk_swapchain_tpl_t      *swapchain_tpl = chain->backend_data;
 
-       if (sync) {
-               *tbm_surface = tpl_surface_dequeue_buffer_with_sync(swapchain_tpl->tpl_surface,
-                                                                                                                       timeout, sync);
-               if (*tbm_surface == NULL)
+       *tbm_surface = tpl_surface_dequeue_buffer_with_sync(swapchain_tpl->tpl_surface,
+                                                                                                               timeout, sync);
+       if (*tbm_surface == NULL) {
+               if (timeout == 0)
+                       return VK_NOT_READY;
+               else if (timeout != UINT64_MAX)
                        return VK_TIMEOUT;
-       } else {
-               *tbm_surface = tpl_surface_dequeue_buffer(swapchain_tpl->tpl_surface);
-               VK_CHECK(*tbm_surface, return VK_ERROR_SURFACE_LOST_KHR, "tpl_surface_dequeue_buffers() failed.\n");
+               else
+                       return VK_ERROR_SURFACE_LOST_KHR;
        }
 
        return VK_SUCCESS;
@@ -72,7 +73,7 @@ swapchain_tpl_acquire_next_image(VkDevice                      device,
 
 static void
 swapchain_tpl_deinit(VkDevice           device,
-                                vk_swapchain_t *chain)
+                                        vk_swapchain_t *chain)
 {
        vk_swapchain_tpl_t      *swapchain_tpl = chain->backend_data;