Mesa (master): foo

Emil Velikov evelikov at kemper.freedesktop.org
Mon Oct 30 15:24:48 UTC 2017


Module: Mesa
Branch: master
Commit: 27d5a7bce09aef83d3349cca5f3777007b3b94b6
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=27d5a7bce09aef83d3349cca5f3777007b3b94b6

Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Wed Oct 25 14:52:55 2017 +0100

foo

Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>

---

 src/compiler/glsl/linker.cpp | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/src/compiler/glsl/linker.cpp b/src/compiler/glsl/linker.cpp
index f827b68555..e7ec9b7bc0 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;
 }
 
 /**




More information about the mesa-commit mailing list