This patch makes sure there is a valid fd before merging it
to the context's fd in vmw_svga_winsys_fence_server_sync().
This fixes the assert running webot.
No regression running kmscube.
Reviewed-by: Sinclair Yeh <syeh@vmware.com>
int32_t *context_fd,
struct pipe_fence_handle *fence)
{
- return sync_accumulate("vmwgfx", context_fd,
- sws->fence_get_fd(sws, fence, FALSE));
+ int32_t fd = sws->fence_get_fd(sws, fence, FALSE);
+
+ /* If we don't have fd, we don't need to merge fd into the context's fd. */
+ if (fd == -1)
+ return 0;
+
+ return sync_accumulate("vmwgfx", context_fd, fd);
}