Module: wine Branch: master Commit: e09aa6fc9420ef3f2c311d6fa43fd0e685177856 URL: http://source.winehq.org/git/wine.git/?a=commit;h=e09aa6fc9420ef3f2c311d6fa4...
Author: Józef Kucia jkucia@codeweavers.com Date: Thu Mar 10 07:41:46 2016 +0100
wined3d: Simplify shader_glsl_append_imm_ivec().
Signed-off-by: Józef Kucia jkucia@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/wined3d/glsl_shader.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-)
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index 85244c8..2970a95 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -323,26 +323,22 @@ static void shader_glsl_append_imm_vec4(struct wined3d_string_buffer *buffer, co static void shader_glsl_append_imm_ivec(struct wined3d_string_buffer *buffer, const int *values, unsigned int size) { - const char *fmt = "%#x"; - char str[4][17] = {{0}}; int i;
- if (1 > size || size > 4) + if (!size || size > 4) { ERR("Invalid vector size %u.\n", size); return; }
- for (i = size - 1; i >= 0; --i) - { - sprintf(str[i], fmt, values[i]); - fmt = "%#x, "; - } + if (size > 1) + shader_addline(buffer, "ivec%u(", size); + + for (i = 0; i < size; ++i) + shader_addline(buffer, i ? ", %#x" : "%#x", values[i]);
if (size > 1) - shader_addline(buffer, "ivec%u(%s%s%s%s)", size, str[0], str[1], str[2], str[3]); - else - shader_addline(buffer, str[0]); + shader_addline(buffer, ")"); }
static const char *get_info_log_line(const char **ptr)