diff options
author | Nicholas Marriott <nicholas.marriott@gmail.com> | 2013-03-19 09:34:00 +0000 |
---|---|---|
committer | Nicholas Marriott <nicholas.marriott@gmail.com> | 2013-03-19 09:34:00 +0000 |
commit | 69d97f6d4b7a373eb2c05ef2c3ca18be3271871b (patch) | |
tree | e706300ac9084d2ecc6a9978f5459f6db46b2b7f | |
parent | f5de847a0c8be02a16b06e2cae366c2edf539d10 (diff) | |
download | rtmux-69d97f6d4b7a373eb2c05ef2c3ca18be3271871b.tar.gz rtmux-69d97f6d4b7a373eb2c05ef2c3ca18be3271871b.tar.bz2 rtmux-69d97f6d4b7a373eb2c05ef2c3ca18be3271871b.zip |
Handle empty pending output (not a failure) and add \n. From George Nachman.
-rw-r--r-- | cmd-capture-pane.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/cmd-capture-pane.c b/cmd-capture-pane.c index 7ac00e0b..f59dc2d6 100644 --- a/cmd-capture-pane.c +++ b/cmd-capture-pane.c @@ -69,7 +69,7 @@ cmd_capture_pane_pending(struct args *args, struct window_pane *wp, line = EVBUFFER_DATA(wp->ictx.since_ground); linelen = EVBUFFER_LENGTH(wp->ictx.since_ground); - buf = NULL; + buf = xstrdup(""); if (args_has(args, 'C')) { for (i = 0; i < linelen; i++) { if (line[i] >= ' ') { @@ -189,6 +189,8 @@ cmd_capture_pane_exec(struct cmd *self, struct cmd_q *cmdq) return (CMD_RETURN_ERROR); } evbuffer_add(c->stdout_data, buf, len); + if (args_has(args, 'P') && len > 0) + evbuffer_add(c->stdout_data, "\n", 1); server_push_stdout(c); } else { limit = options_get_number(&global_options, "buffer-limit"); |