summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--paste.c4
-rw-r--r--window.c3
2 files changed, 5 insertions, 2 deletions
diff --git a/paste.c b/paste.c
index d3a90a78..c76c52e5 100644
--- a/paste.c
+++ b/paste.c
@@ -163,8 +163,10 @@ paste_add(char *data, size_t size)
struct paste_buffer *pb, *pb1;
u_int limit;
- if (size == 0)
+ if (size == 0) {
+ free(data);
return;
+ }
limit = options_get_number(global_options, "buffer-limit");
RB_FOREACH_REVERSE_SAFE(pb, paste_time_tree, &paste_by_time, pb1) {
diff --git a/window.c b/window.c
index 3eb58bda..c8b8baf0 100644
--- a/window.c
+++ b/window.c
@@ -886,7 +886,8 @@ window_pane_spawn(struct window_pane *wp, int argc, char **argv,
ws.ws_col = screen_size_x(&wp->base);
ws.ws_row = screen_size_y(&wp->base);
- switch (wp->pid = pty_fork(ptm_fd, &wp->fd, wp->tty, sizeof wp->tty, &ws)) {
+ wp->pid = pty_fork(ptm_fd, &wp->fd, wp->tty, sizeof wp->tty, &ws);
+ switch (wp->pid) {
case -1:
wp->fd = -1;
xasprintf(cause, "%s: %s", cmd, strerror(errno));