radv: rework the error function helpers a bit

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6230>
This commit is contained in:
Samuel Pitoiset
2020-08-07 16:05:46 +02:00
parent 11781c0e49
commit cc4b9c2128
2 changed files with 28 additions and 8 deletions

View File

@@ -88,11 +88,11 @@ void radv_printflike(3, 4)
}
VkResult
__vk_errorf(struct radv_instance *instance, VkResult error, const char *file,
int line, const char *format, ...)
__vk_errorv(struct radv_instance *instance, VkResult error, const char *file,
int line, const char *format, va_list ap)
{
va_list ap;
char buffer[256];
char report[512];
const char *error_str = vk_Result_to_str(error);
@@ -102,15 +102,29 @@ __vk_errorf(struct radv_instance *instance, VkResult error, const char *file,
#endif
if (format) {
va_start(ap, format);
vsnprintf(buffer, sizeof(buffer), format, ap);
va_end(ap);
fprintf(stderr, "%s:%d: %s (%s)\n", file, line, buffer, error_str);
snprintf(report, sizeof(report), "%s:%d: %s (%s)", file, line,
buffer, error_str);
} else {
fprintf(stderr, "%s:%d: %s\n", file, line, error_str);
snprintf(report, sizeof(report), "%s:%d: %s", file, line,
error_str);
}
fprintf(stderr, "%s\n", report);
return error;
}
VkResult
__vk_errorf(struct radv_instance *instance, VkResult error, const char *file,
int line, const char *format, ...)
{
va_list ap;
va_start(ap, format);
__vk_errorv(instance, error, file, line, format, ap);
va_end(ap);
return error;
}