aboutsummaryrefslogtreecommitdiff
path: root/cmd-capture-pane.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2013-02-20 09:32:52 +0000
committerNicholas Marriott <nicholas.marriott@gmail.com>2013-02-20 09:32:52 +0000
commit1e20153b6e90e6bfd4643667dad3d9971636ef6b (patch)
tree33a4d980a995acf8a85f073a4e3d1704d015cda7 /cmd-capture-pane.c
parent4621a521837d2772b6bd69b038e35391eb6f1c18 (diff)
downloadrtmux-1e20153b6e90e6bfd4643667dad3d9971636ef6b.tar.gz
rtmux-1e20153b6e90e6bfd4643667dad3d9971636ef6b.tar.bz2
rtmux-1e20153b6e90e6bfd4643667dad3d9971636ef6b.zip
Fix so capture-pane/save-buffer can work in control clients, from George
Nachman.
Diffstat (limited to 'cmd-capture-pane.c')
-rw-r--r--cmd-capture-pane.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/cmd-capture-pane.c b/cmd-capture-pane.c
index 80be0165..83ec303c 100644
--- a/cmd-capture-pane.c
+++ b/cmd-capture-pane.c
@@ -44,7 +44,7 @@ enum cmd_retval
cmd_capture_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
{
struct args *args = self->args;
- struct client *c = ctx->cmdclient;
+ struct client *c;
struct window_pane *wp;
char *buf, *line, *cause;
struct screen *s;
@@ -106,6 +106,9 @@ cmd_capture_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
}
if (args_has(args, 'p')) {
+ c = ctx->curclient;
+ if (c == NULL || !(c->flags & CLIENT_CONTROL))
+ c = ctx->cmdclient;
if (c == NULL) {
ctx->error(ctx, "can't write to stdout");
return (CMD_RETURN_ERROR);