From aa032f31bbabd5b4cb0af9ffb1b60c983f0edbf6 Mon Sep 17 00:00:00 2001 From: Giovanni Mascellani Date: Mon, 3 Mar 2025 11:44:11 +0100 Subject: [PATCH] vkd3d: Split Vulkan debug messages. So that they do not get truncated if they're too long. --- libs/vkd3d/device.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/libs/vkd3d/device.c b/libs/vkd3d/device.c index a1f451ef..15affcee 100644 --- a/libs/vkd3d/device.c +++ b/libs/vkd3d/device.c @@ -521,7 +521,26 @@ static VkBool32 VKAPI_PTR vkd3d_debug_report_callback(VkDebugReportFlagsEXT flag VkDebugReportObjectTypeEXT object_type, uint64_t object, size_t location, int32_t message_code, const char *layer_prefix, const char *message, void *user_data) { - FIXME("%s\n", debugstr_a(message)); + while (*message) + { + const char *end = strchr(message, '\n'); + size_t len; + + if (end) + len = end - message; + else + len = strlen(message); + + len = min(len, 256); + + FIXME("%s\n", debugstr_an(message, len)); + + message += len; + + if (*message == '\n') + ++message; + } + return VK_FALSE; }