diff options
author | Pádraig Brady <P@draigBrady.com> | 2015-10-27 13:13:59 +0000 |
---|---|---|
committer | Pádraig Brady <P@draigBrady.com> | 2015-10-27 17:24:54 +0000 |
commit | 6796698c9945d87236ffcc939137d0919ef04931 (patch) | |
tree | dd843e7808186887c2959451e34fdd7f42783359 /src/tee.c | |
parent | 106d4bf159a97b573d6479473fa38216fb8bfada (diff) | |
download | coreutils-6796698c9945d87236ffcc939137d0919ef04931.tar.xz |
all: quote string arguments in error messages
These strings are often file names or other user specified
parameters, which can give confusing errors in
the presence of unexpected characters for example.
* cfg.mk (sc_error_quotes): A new syntax check rule.
* src/*.c: Wrap error() string arguments with quote().
* tests/: Adjust accordingly.
* NEWS: Mention the improvement.
Diffstat (limited to 'src/tee.c')
-rw-r--r-- | src/tee.c | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -25,6 +25,7 @@ #include "argmatch.h" #include "error.h" #include "fadvise.h" +#include "quote.h" #include "stdio--.h" #include "xfreopen.h" @@ -170,7 +171,7 @@ main (int argc, char **argv) ok = tee_files (argc - optind, &argv[optind]); if (close (STDIN_FILENO) != 0) - error (EXIT_FAILURE, errno, _("standard input")); + error (EXIT_FAILURE, errno, "%s", _("standard input")); return ok ? EXIT_SUCCESS : EXIT_FAILURE; } @@ -218,7 +219,7 @@ tee_files (int nfiles, char **files) { error (output_error == output_error_exit || output_error == output_error_exit_nopipe, - errno, "%s", files[i]); + errno, "%s", quote (files[i])); ok = false; } else @@ -251,7 +252,7 @@ tee_files (int nfiles, char **files) { error (output_error == output_error_exit || output_error == output_error_exit_nopipe, - w_errno, "%s", files[i]); + w_errno, "%s", quote (files[i])); } descriptors[i] = NULL; if (fail) @@ -270,7 +271,7 @@ tee_files (int nfiles, char **files) for (i = 1; i <= nfiles; i++) if (descriptors[i] && fclose (descriptors[i]) != 0) { - error (0, errno, "%s", files[i]); + error (0, errno, "%s", quote (files[i])); ok = false; } |