mirror of
https://github.com/tmate-io/tmate-ssh-server.git
synced 2020-11-18 19:53:51 -08:00
Pass window titles through vis(1). <0x20 is dropped anyway by the input state
machine but top-bit-set nonprintables could cause trouble, and they are neater like this anyway. Suggested by deraadt a few days ago.
This commit is contained in:
parent
655a1aea6c
commit
2faec76afa
2
input.c
2
input.c
@ -475,7 +475,7 @@ input_state_string_next(u_char ch, struct input_ctx *ictx)
|
||||
return;
|
||||
}
|
||||
|
||||
if (ch >= 0x20 && ch != 0x7f) {
|
||||
if (ch >= 0x20) {
|
||||
if (input_add_string(ictx, ch) != 0)
|
||||
input_state(ictx, input_state_first);
|
||||
return;
|
||||
|
7
screen.c
7
screen.c
@ -19,6 +19,7 @@
|
||||
#include <sys/types.h>
|
||||
|
||||
#include <string.h>
|
||||
#include <vis.h>
|
||||
|
||||
#include "tmux.h"
|
||||
|
||||
@ -65,8 +66,12 @@ screen_free(struct screen *s)
|
||||
void
|
||||
screen_set_title(struct screen *s, const char *title)
|
||||
{
|
||||
char tmp[BUFSIZ];
|
||||
|
||||
strnvis(tmp, title, sizeof tmp, VIS_OCTAL|VIS_TAB|VIS_NL);
|
||||
|
||||
xfree(s->title);
|
||||
s->title = xstrdup(title);
|
||||
s->title = xstrdup(tmp);
|
||||
}
|
||||
|
||||
/* Resize screen. */
|
||||
|
Loading…
x
Reference in New Issue
Block a user