VK_ERROR("pthread_mutex_lock free queue failed\n");
tsq_err = tbm_surface_queue_release(swapchain_tdm->tbm_queue, tbm_surface);
- VK_CHECK(tsq_err == TBM_SURFACE_QUEUE_ERROR_NONE, return VK_ERROR_SURFACE_LOST_KHR,
- "tbm_surface_queue_release failed.\n");
+ if (tsq_err != TBM_SURFACE_QUEUE_ERROR_NONE) {
+ VK_ERROR("tbm_surface_queue_release failed.\n");
+ pthread_mutex_unlock(&swapchain_tdm->free_queue_mutex);
+ return VK_ERROR_SURFACE_LOST_KHR;
+ }
pthread_mutex_unlock(&swapchain_tdm->free_queue_mutex);
pthread_cond_signal(&swapchain_tdm->free_queue_cond);
}
tsq_err = tbm_surface_queue_dequeue(swapchain_tdm->tbm_queue, tbm_surface);
- VK_CHECK(tsq_err == TBM_SURFACE_QUEUE_ERROR_NONE, return VK_ERROR_SURFACE_LOST_KHR,
- "tbm_surface_queue_dequeue failed.\n");
+ if (tsq_err != TBM_SURFACE_QUEUE_ERROR_NONE) {
+ VK_ERROR("tbm_surface_queue_dequeue failed.\n");
+ pthread_mutex_unlock(&swapchain_tdm->free_queue_mutex);
+ return VK_ERROR_SURFACE_LOST_KHR;
+ }
+
pthread_mutex_unlock(&swapchain_tdm->free_queue_mutex);
if (sync)