winsys/drm: Fix assert when try to accumulate an invalid fd
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>
This commit is contained in:
committed by
Brian Paul
parent
16f17e3a3c
commit
f4f39fa5d9
@@ -158,8 +158,13 @@ vmw_svga_winsys_fence_server_sync(struct svga_winsys_screen *sws,
|
||||
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);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user