diff options
| author | B. Watson <urchlay@slackware.uk> | 2025-12-12 17:15:22 -0500 |
|---|---|---|
| committer | B. Watson <urchlay@slackware.uk> | 2025-12-12 17:15:22 -0500 |
| commit | c0bc883bcfca5791ea64d488caf359a2c8de4360 (patch) | |
| tree | bc72765712fd1616b68f3e72654df9ee2a289714 /src/sanity.c | |
| parent | 1fa2b732b7b6c1539995fa40605d9bcf807ac357 (diff) | |
| download | alftools-c0bc883bcfca5791ea64d488caf359a2c8de4360.tar.gz | |
Do not print unprintable characters in filenames.
Diffstat (limited to 'src/sanity.c')
| -rw-r--r-- | src/sanity.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/sanity.c b/src/sanity.c index c542aec..dbcf57a 100644 --- a/src/sanity.c +++ b/src/sanity.c @@ -5,7 +5,7 @@ extern const char *self; -void bad_atari_filename(const char *fname, const char *msg) { +int safe_print_filename(const char *fname, FILE *fh) { char fn[50] = ""; char xbuf[5]; int i; @@ -21,7 +21,14 @@ void bad_atari_filename(const char *fname, const char *msg) { } } - fprintf(stderr, "%s: warning: bad Atari filename \"%s\": %s\n", self, fn, msg); + fputs(fn, fh); + return strlen(fn); +} + +void bad_atari_filename(const char *fname, const char *msg) { + fprintf(stderr, "%s: warning: bad Atari filename \"", self); + safe_print_filename(fname, stderr); + fprintf(stderr, "\": %s\n", msg); } /* note to self: it's tempting to use isalpha(), isprint(), etc |
