Check for exact match for layout name before looking for a prefix match.
authornicm <nicm@openbsd.org>
Fri, 23 Aug 2024 10:19:06 +0000 (10:19 +0000)
committernicm <nicm@openbsd.org>
Fri, 23 Aug 2024 10:19:06 +0000 (10:19 +0000)
usr.bin/tmux/layout-set.c

index 4050196..77eca1a 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: layout-set.c,v 1.31 2024/08/21 05:03:13 nicm Exp $ */
+/* $OpenBSD: layout-set.c,v 1.32 2024/08/23 10:19:06 nicm Exp $ */
 
 /*
  * Copyright (c) 2009 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -55,6 +55,10 @@ layout_set_lookup(const char *name)
        u_int   i;
        int     matched = -1;
 
+       for (i = 0; i < nitems(layout_sets); i++) {
+               if (strcmp(layout_sets[i].name, name) == 0)
+                       return (i);
+       }
        for (i = 0; i < nitems(layout_sets); i++) {
                if (strncmp(layout_sets[i].name, name, strlen(name)) == 0) {
                        if (matched != -1)      /* ambiguous */