summaryrefslogtreecommitdiffstats
path: root/lib/tt.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/tt.c')
-rw-r--r--lib/tt.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/tt.c b/lib/tt.c
index 2d5b16b52..1d69a34c4 100644
--- a/lib/tt.c
+++ b/lib/tt.c
@@ -559,8 +559,8 @@ static void fputs_quoted(const char *data, FILE *out)
fputc('"', out);
for (p = data; p && *p; p++) {
- if ((unsigned char) *p == 0x22)
- fputs("\\x22", out);
+ if ((unsigned char) *p == 0x22 || !isprint((unsigned char) *p))
+ fprintf(out, "\\x%02x", *p);
else
fputc(*p, out);
}
@@ -572,7 +572,7 @@ static void fputs_nonblank(const char *data, FILE *out)
const char *p;
for (p = data; p && *p; p++) {
- if (isblank((unsigned char) *p))
+ if (isblank((unsigned char) *p) || !isprint((unsigned char) *p))
fprintf(out, "\\x%02x", *p);
else
fputc(*p, out);