From: Emil Velikov Date: Wed, 25 Oct 2017 13:52:55 +0000 (+0100) Subject: foo X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=27d5a7bce09aef83d3349cca5f3777007b3b94b6;p=mesa.git foo Signed-off-by: Emil Velikov --- diff --git a/src/compiler/glsl/linker.cpp b/src/compiler/glsl/linker.cpp index f827b68555f..e7ec9b7bc03 100644 --- a/src/compiler/glsl/linker.cpp +++ b/src/compiler/glsl/linker.cpp @@ -3653,21 +3653,21 @@ included_in_packed_varying(ir_variable *var, const char *name) if (strncmp(var->name, "packed:", 7) != 0) return false; - char *list = strdup(var->name + 7); - assert(list); - - bool found = false; - char *saveptr; - char *token = strtok_r(list, ",", &saveptr); + const char *token = var->name + 7; while (token) { - if (strcmp(token, name) == 0) { - found = true; - break; + const char *next_token = strchr(list, ' '); + if (next_token) { + len = token - next_token; + next_token++; + } else { + len = strlen(token); } - token = strtok_r(NULL, ",", &saveptr); + if (strncmp(token, name, MAX2(len, strlen(name)) == 0) + return true; + + token = next_token; } - free(list); - return found; + return false; } /**