Set up format tree for %if, GitHub issue 1896.
authornicm <nicm@openbsd.org>
Tue, 10 Sep 2019 07:50:33 +0000 (07:50 +0000)
committernicm <nicm@openbsd.org>
Tue, 10 Sep 2019 07:50:33 +0000 (07:50 +0000)
usr.bin/tmux/cmd-parse.y
usr.bin/tmux/cmd-queue.c
usr.bin/tmux/format.c
usr.bin/tmux/key-bindings.c
usr.bin/tmux/window-copy.c

index 7b72166..93ca101 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-parse.y,v 1.17 2019/06/18 11:17:40 nicm Exp $ */
+/* $OpenBSD: cmd-parse.y,v 1.18 2019/09/10 07:50:33 nicm Exp $ */
 
 /*
  * Copyright (c) 2019 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -176,18 +176,18 @@ expanded  : format
                        struct cmd_parse_input  *pi = ps->input;
                        struct format_tree      *ft;
                        struct client           *c = pi->c;
-                       struct cmd_find_state   *fs;
+                       struct cmd_find_state   *fsp;
+                       struct cmd_find_state    fs;
                        int                      flags = FORMAT_NOJOBS;
 
                        if (cmd_find_valid_state(&pi->fs))
-                               fs = &pi->fs;
-                       else
-                               fs = NULL;
+                               fsp = &pi->fs;
+                       else {
+                               cmd_find_from_client(&fs, c, 0);
+                               fsp = &fs;
+                       }
                        ft = format_create(NULL, pi->item, FORMAT_NONE, flags);
-                       if (fs != NULL)
-                               format_defaults(ft, c, fs->s, fs->wl, fs->wp);
-                       else
-                               format_defaults(ft, c, NULL, NULL, NULL);
+                       format_defaults(ft, c, fsp->s, fsp->wl, fsp->wp);
 
                        $$ = format_expand(ft, $1);
                        format_free(ft);
index f389078..30f3b8e 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-queue.c,v 1.74 2019/06/18 11:08:42 nicm Exp $ */
+/* $OpenBSD: cmd-queue.c,v 1.75 2019/09/10 07:50:33 nicm Exp $ */
 
 /*
  * Copyright (c) 2013 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -102,7 +102,6 @@ cmdq_insert_after(struct cmdq_item *after, struct cmdq_item *item)
        } while (item != NULL);
 }
 
-
 /* Insert a hook. */
 void
 cmdq_insert_hook(struct session *s, struct cmdq_item *item,
index 61ae94a..6e00957 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: format.c,v 1.208 2019/07/09 14:03:12 nicm Exp $ */
+/* $OpenBSD: format.c,v 1.209 2019/09/10 07:50:33 nicm Exp $ */
 
 /*
  * Copyright (c) 2011 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -946,7 +946,6 @@ format_each(struct format_tree *ft, void (*cb)(const char *, const char *,
        }
 }
 
-
 /* Add a key-value pair. */
 void
 format_add(struct format_tree *ft, const char *key, const char *fmt, ...)
index b57b19e..cef809b 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: key-bindings.c,v 1.98 2019/05/28 10:27:11 nicm Exp $ */
+/* $OpenBSD: key-bindings.c,v 1.99 2019/09/10 07:50:33 nicm Exp $ */
 
 /*
  * Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -69,7 +69,6 @@
        " '#{?pane_marked,Unmark,Mark}' 'm' {select-pane -m}" \
        " '#{?window_zoomed_flag,Unzoom,Zoom}' 'z' {resize-pane -Z}"
 
-
 static int key_bindings_cmp(struct key_binding *, struct key_binding *);
 RB_GENERATE_STATIC(key_bindings, key_binding, entry, key_bindings_cmp);
 static int key_table_cmp(struct key_table *, struct key_table *);
index 072a1ae..ed35508 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: window-copy.c,v 1.234 2019/09/09 08:01:21 nicm Exp $ */
+/* $OpenBSD: window-copy.c,v 1.235 2019/09/10 07:50:33 nicm Exp $ */
 
 /*
  * Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -1108,7 +1108,6 @@ window_copy_cmd_previous_matching_bracket(struct window_copy_cmd_state *cs)
        return (WINDOW_COPY_CMD_NOTHING);
 }
 
-
 static enum window_copy_cmd_action
 window_copy_cmd_next_matching_bracket(struct window_copy_cmd_state *cs)
 {