Merge branch 'obsd-master'

pull/1758/head
Thomas Adam 2019-05-23 21:02:30 +01:00
commit 19a3a9ee20
4 changed files with 8 additions and 5 deletions

1
cfg.c
View File

@ -125,6 +125,7 @@ load_cfg(const char *path, struct client *c, struct cmdq_item *item, int flags,
memset(&pi, 0, sizeof pi);
pi.flags = flags;
pi.file = path;
pi.line = 1;
pr = cmd_parse_from_file(f, &pi);
fclose(f);

View File

@ -356,7 +356,7 @@ command : assignment TOKEN
$$ = xcalloc(1, sizeof *$$);
$$->name = $2;
$$->line = ps->input->line;
$$->line = ps->input->line - 1;
}
| assignment TOKEN arguments
@ -365,7 +365,7 @@ command : assignment TOKEN
$$ = xcalloc(1, sizeof *$$);
$$->name = $2;
$$->line = ps->input->line;
$$->line = ps->input->line - 1;
$$->argc = $3.argc;
$$->argv = $3.argv;

View File

@ -208,8 +208,8 @@ cmd_show_options_print(struct cmd *self, struct cmdq_item *item,
if (args_has(self->args, 'v'))
cmdq_print(item, "%s", value);
else if (options_isstring(o)) {
utf8_stravis(&escaped, value, VIS_OCTAL|VIS_TAB|VIS_NL|VIS_DQ);
cmdq_print(item, "%s \"%s\"", name, escaped);
escaped = args_escape(value);
cmdq_print(item, "%s %s", name, escaped);
free(escaped);
} else
cmdq_print(item, "%s %s", name, value);

4
utf8.c
View File

@ -209,7 +209,9 @@ utf8_strvis(char *dst, const char *src, size_t len, int flag)
src -= ud.have;
}
if (src[0] == '$' && src < end - 1) {
if (isalpha((u_char)src[1]) || src[1] == '_')
if (isalpha((u_char)src[1]) ||
src[1] == '_' ||
src[1] == '{')
*dst++ = '\\';
*dst++ = '$';
} else if (src < end - 1)