diff options
author | Nicholas Marriott <nicholas.marriott@gmail.com> | 2013-03-21 23:57:21 +0000 |
---|---|---|
committer | Nicholas Marriott <nicholas.marriott@gmail.com> | 2013-03-21 23:57:21 +0000 |
commit | 041a911c43c9c732e5399a7757a4e21ae4ac0607 (patch) | |
tree | 859be6af48ba0381536318dfdff9b3e66db00fb6 /window-copy.c | |
parent | 6ddb06d37232a9d02da996e0a83d5acd52002ffc (diff) | |
download | rtmux-041a911c43c9c732e5399a7757a4e21ae4ac0607.tar.gz rtmux-041a911c43c9c732e5399a7757a4e21ae4ac0607.tar.bz2 rtmux-041a911c43c9c732e5399a7757a4e21ae4ac0607.zip |
Create a new context when copying instead of using the input context. The input
context may not exist yet.
Diffstat (limited to 'window-copy.c')
-rw-r--r-- | window-copy.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/window-copy.c b/window-copy.c index 2dd65eba..51a8f108 100644 --- a/window-copy.c +++ b/window-copy.c @@ -1385,10 +1385,14 @@ window_copy_get_selection(struct window_pane *wp, size_t *len) void window_copy_copy_buffer(struct window_pane *wp, int idx, void *buf, size_t len) { - u_int limit; + u_int limit; + struct screen_write_ctx ctx; - if (options_get_number(&global_options, "set-clipboard")) - screen_write_setselection(&wp->ictx.ctx, buf, len); + if (options_get_number(&global_options, "set-clipboard")) { + screen_write_start(&ctx, wp, NULL); + screen_write_setselection(&ctx, buf, len); + screen_write_stop(&ctx); + } if (idx == -1) { limit = options_get_number(&global_options, "buffer-limit"); |