Module: Mesa Branch: master Commit: aa560e8e6328acd5b8feec1fea54dec06ae21368 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=aa560e8e6328acd5b8feec1fea54dec06ae21368
Author: Nicholas Bishop <nbis...@neverware.com> Date: Thu Sep 22 16:04:13 2016 +0100 st/dri: check pipe_screen->resource_get_handle() return value Change dri2_query_image to check the return value of resource_get_handle and return GL_FALSE if an error occurs. For reference this is an example callstack that should propagate the error back to the user: i915_drm_buffer_get_handle i915_texture_get_handle u_resource_get_handle_vtbl dri2_query_image gbm_dri_bo_get_fd gbm_bo_get_fd Cc: mesa-sta...@lists.freedesktop.org Signed-off-by: Nicholas Bishop <nbis...@neverware.com> Reviewed-by: Eric Engestrom <eric.engest...@imgtec.com> (v1) [Emil Velikov: Split from larger patch, polish coding style, cc stable] Signed-off-by: Emil Velikov <emil.veli...@collabora.com> --- src/gallium/state_trackers/dri/dri2.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c index a22e7ee..64d9c3e 100644 --- a/src/gallium/state_trackers/dri/dri2.c +++ b/src/gallium/state_trackers/dri/dri2.c @@ -1055,8 +1055,10 @@ dri2_query_image(__DRIimage *image, int attrib, int *value) return GL_TRUE; case __DRI_IMAGE_ATTRIB_FD: whandle.type= DRM_API_HANDLE_TYPE_FD; - image->texture->screen->resource_get_handle(image->texture->screen, - NULL, image->texture, &whandle, usage); + if (!image->texture->screen->resource_get_handle(image->texture->screen, + NULL, image->texture, &whandle, usage)) + return GL_FALSE; + *value = whandle.handle; return GL_TRUE; case __DRI_IMAGE_ATTRIB_FORMAT: _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit