vkd3d-shader/hlsl: Introduce an hlsl_sprintf_alloc() helper.

This commit is contained in:
Zebediah Figura
2023-08-07 16:45:31 -05:00
committed by Alexandre Julliard
parent d27b8eb2c0
commit 63e056512d
Notes: Alexandre Julliard 2023-08-30 23:19:43 +02:00
Approved-by: Giovanni Mascellani (@giomasce)
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/310
4 changed files with 36 additions and 23 deletions

View File

@@ -1638,17 +1638,12 @@ static void write_sm1_uniforms(struct hlsl_ctx *ctx, struct vkd3d_bytecode_buffe
if (var->is_param && var->is_uniform)
{
struct vkd3d_string_buffer *name;
char *new_name;
if (!(name = hlsl_get_string_buffer(ctx)))
{
buffer->status = VKD3D_ERROR_OUT_OF_MEMORY;
if (!(new_name = hlsl_sprintf_alloc(ctx, "$%s", var->name)))
return;
}
vkd3d_string_buffer_printf(name, "$%s", var->name);
vkd3d_free((char *)var->name);
var->name = hlsl_strdup(ctx, name->buffer);
hlsl_release_string_buffer(ctx, name);
var->name = new_name;
}
}
}