aboutsummaryrefslogtreecommitdiff
path: root/status.c
diff options
context:
space:
mode:
Diffstat (limited to 'status.c')
-rw-r--r--status.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/status.c b/status.c
index 5e696afb..877ee846 100644
--- a/status.c
+++ b/status.c
@@ -928,9 +928,10 @@ status_prompt_key(struct client *c, int key)
case MODEKEYEDIT_PASTE:
if ((pb = paste_get_top(&c->session->buffers)) == NULL)
break;
- if ((last = strchr(pb->data, '\n')) == NULL)
- last = strchr(pb->data, '\0');
- n = last - pb->data;
+ for (n = 0; n < pb->size; n++) {
+ if (pb->data[n] < 32 || pb->data[n] == 127)
+ break;
+ }
c->prompt_buffer = xrealloc(c->prompt_buffer, 1, size + n + 1);
if (c->prompt_index == size) {