Module: Mesa Branch: master Commit: 7109a1fe132e5f79a25bb34f0f28a21cce3076db URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7109a1fe132e5f79a25bb34f0f28a21cce3076db
Author: Samuel Iglesias Gonsálvez <[email protected]> Date: Fri Jan 19 08:45:10 2018 +0100 anv: avoid segmentation fault due to vk_error() vk_error() is a macro that calls __vk_errorf() with instance == NULL. Then, __vk_errorf() passes a pointer to instance->debug_report_callbacks to vk_debug_error(), which segfaults as this pointer is invalid but not NULL. Fixes: e5b1bd6ab8 "vulkan: move anv VK_EXT_debug_report implementation to common code." Signed-off-by: Samuel Iglesias Gonsálvez <[email protected]> Reviewed-by: Tapani Pälli <[email protected]> --- src/intel/vulkan/anv_util.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/intel/vulkan/anv_util.c b/src/intel/vulkan/anv_util.c index 6b31224d7f..3c1803aa05 100644 --- a/src/intel/vulkan/anv_util.c +++ b/src/intel/vulkan/anv_util.c @@ -99,14 +99,16 @@ __vk_errorf(struct anv_instance *instance, const void *object, snprintf(report, sizeof(report), "%s:%d: %s", file, line, error_str); } - vk_debug_report(&instance->debug_report_callbacks, - VK_DEBUG_REPORT_ERROR_BIT_EXT, - type, - (uint64_t) (uintptr_t) object, - line, - 0, - "anv", - report); + if (instance) { + vk_debug_report(&instance->debug_report_callbacks, + VK_DEBUG_REPORT_ERROR_BIT_EXT, + type, + (uint64_t) (uintptr_t) object, + line, + 0, + "anv", + report); + } intel_loge("%s", report); _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
