u_vbuf: Make sure all caps are initialized

Pointed out by valgrind.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=83148
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Michel Dänzer 2014-08-28 11:12:20 +09:00 committed by Michel Dänzer
parent 2a99b6e40f
commit 6cd0dbc415
1 changed files with 15 additions and 23 deletions

View File

@ -279,30 +279,22 @@ boolean u_vbuf_get_caps(struct pipe_screen *screen, struct u_vbuf_caps *caps)
}
}
if (!screen->get_param(screen,
PIPE_CAP_VERTEX_BUFFER_OFFSET_4BYTE_ALIGNED_ONLY)) {
caps->buffer_offset_unaligned = TRUE;
} else {
fallback = TRUE;
}
caps->buffer_offset_unaligned =
!screen->get_param(screen,
PIPE_CAP_VERTEX_BUFFER_OFFSET_4BYTE_ALIGNED_ONLY);
caps->buffer_stride_unaligned =
!screen->get_param(screen,
PIPE_CAP_VERTEX_BUFFER_STRIDE_4BYTE_ALIGNED_ONLY);
caps->velem_src_offset_unaligned =
!screen->get_param(screen,
PIPE_CAP_VERTEX_ELEMENT_SRC_OFFSET_4BYTE_ALIGNED_ONLY);
caps->user_vertex_buffers =
screen->get_param(screen, PIPE_CAP_USER_VERTEX_BUFFERS);
if (!screen->get_param(screen,
PIPE_CAP_VERTEX_BUFFER_STRIDE_4BYTE_ALIGNED_ONLY)) {
caps->buffer_stride_unaligned = TRUE;
} else {
fallback = TRUE;
}
if (!screen->get_param(screen,
PIPE_CAP_VERTEX_ELEMENT_SRC_OFFSET_4BYTE_ALIGNED_ONLY)) {
caps->velem_src_offset_unaligned = TRUE;
} else {
fallback = TRUE;
}
if (screen->get_param(screen, PIPE_CAP_USER_VERTEX_BUFFERS)) {
caps->user_vertex_buffers = TRUE;
} else {
if (!caps->buffer_offset_unaligned ||
!caps->buffer_stride_unaligned ||
!caps->velem_src_offset_unaligned ||
!caps->user_vertex_buffers) {
fallback = TRUE;
}