summaryrefslogtreecommitdiffstats
path: root/cmd-capture-pane.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2013-03-19 09:34:00 +0000
committerNicholas Marriott <nicholas.marriott@gmail.com>2013-03-19 09:34:00 +0000
commit69d97f6d4b7a373eb2c05ef2c3ca18be3271871b (patch)
treee706300ac9084d2ecc6a9978f5459f6db46b2b7f /cmd-capture-pane.c
parentf5de847a0c8be02a16b06e2cae366c2edf539d10 (diff)
Handle empty pending output (not a failure) and add \n. From George Nachman.
Diffstat (limited to 'cmd-capture-pane.c')
-rw-r--r--cmd-capture-pane.c4
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");