Don't free after calling paste_set but do after evbuffer_add, from Theo
authornicm <nicm@openbsd.org>
Fri, 16 Oct 2015 07:43:29 +0000 (07:43 +0000)
committernicm <nicm@openbsd.org>
Fri, 16 Oct 2015 07:43:29 +0000 (07:43 +0000)
Buehler.

usr.bin/tmux/cmd-capture-pane.c

index 8b8e8f9..378ed74 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-capture-pane.c,v 1.33 2015/10/07 09:52:58 nicm Exp $ */
+/* $OpenBSD: cmd-capture-pane.c,v 1.34 2015/10/16 07:43:29 nicm Exp $ */
 
 /*
  * Copyright (c) 2009 Jonathan Alvarado <radobobo@users.sourceforge.net>
@@ -200,11 +200,11 @@ cmd_capture_pane_exec(struct cmd *self, struct cmd_q *cmdq)
                        return (CMD_RETURN_ERROR);
                }
                evbuffer_add(c->stdout_data, buf, len);
+               free(buf);
                if (args_has(args, 'P') && len > 0)
                    evbuffer_add(c->stdout_data, "\n", 1);
                server_push_stdout(c);
        } else {
-
                bufname = NULL;
                if (args_has(args, 'b'))
                        bufname = args_get(args, 'b');
@@ -217,6 +217,5 @@ cmd_capture_pane_exec(struct cmd *self, struct cmd_q *cmdq)
                }
        }
 
-       free(buf);
        return (CMD_RETURN_NORMAL);
 }