diff options
author | Thomas Adam <thomas@xteddy.org> | 2019-05-23 17:02:25 +0100 |
---|---|---|
committer | Thomas Adam <thomas@xteddy.org> | 2019-05-23 17:02:25 +0100 |
commit | 43431e7e8458091c762792db39af3fef65e14412 (patch) | |
tree | 9887dff5841a98b0f31e561bd663bbedce9f2c38 /utf8.c | |
parent | 389cf63cbc027c995900bbdd6e68f4f5a96e5c08 (diff) | |
parent | eb8b51effcd2dee7b95c811c894bf29387a272c9 (diff) | |
download | rtmux-43431e7e8458091c762792db39af3fef65e14412.tar.gz rtmux-43431e7e8458091c762792db39af3fef65e14412.tar.bz2 rtmux-43431e7e8458091c762792db39af3fef65e14412.zip |
Merge branch 'obsd-master'
Diffstat (limited to 'utf8.c')
-rw-r--r-- | utf8.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -18,6 +18,7 @@ #include <sys/types.h> +#include <ctype.h> #include <errno.h> #include <stdlib.h> #include <string.h> @@ -207,7 +208,11 @@ utf8_strvis(char *dst, const char *src, size_t len, int flag) /* Not a complete, valid UTF-8 character. */ src -= ud.have; } - if (src < end - 1) + if (src[0] == '$' && src < end - 1) { + if (isalpha((u_char)src[1]) || src[1] == '_') + *dst++ = '\\'; + *dst++ = '$'; + } else if (src < end - 1) dst = vis(dst, src[0], flag, src[1]); else if (src < end) dst = vis(dst, src[0], flag, '\0'); |