summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cfg.mk31
-rw-r--r--gl/lib/root-dev-ino.h4
-rw-r--r--src/base64.c6
-rw-r--r--src/cat.c15
-rw-r--r--src/chcon.c19
-rw-r--r--src/chgrp.c7
-rw-r--r--src/chmod.c24
-rw-r--r--src/chown-core.c15
-rw-r--r--src/chown.c4
-rw-r--r--src/chroot.c6
-rw-r--r--src/cksum.c9
-rw-r--r--src/comm.c8
-rw-r--r--src/copy.c162
-rw-r--r--src/coreutils.c6
-rw-r--r--src/cp.c30
-rw-r--r--src/csplit.c13
-rw-r--r--src/cut.c7
-rw-r--r--src/date.c6
-rw-r--r--src/dd.c62
-rw-r--r--src/df.c8
-rw-r--r--src/dircolors.c8
-rw-r--r--src/du.c20
-rw-r--r--src/expand.c6
-rw-r--r--src/expr.c1
-rw-r--r--src/find-mount-point.c11
-rw-r--r--src/fmt.c5
-rw-r--r--src/fold.c7
-rw-r--r--src/head.c28
-rw-r--r--src/hostname.c3
-rw-r--r--src/install.c42
-rw-r--r--src/join.c10
-rw-r--r--src/link.c2
-rw-r--r--src/ln.c45
-rw-r--r--src/ls.c7
-rw-r--r--src/md5sum.c19
-rw-r--r--src/mkdir.c8
-rw-r--r--src/mkfifo.c4
-rw-r--r--src/mknod.c6
-rw-r--r--src/mv.c15
-rw-r--r--src/nl.c6
-rw-r--r--src/nohup.c9
-rw-r--r--src/od.c8
-rw-r--r--src/paste.c14
-rw-r--r--src/pathchk.c11
-rw-r--r--src/pinky.c3
-rw-r--r--src/pr.c6
-rw-r--r--src/ptx.c4
-rw-r--r--src/pwd.c4
-rw-r--r--src/readlink.c3
-rw-r--r--src/realpath.c13
-rw-r--r--src/remove.c21
-rw-r--r--src/rm.c8
-rw-r--r--src/rmdir.c9
-rw-r--r--src/runcon.c2
-rw-r--r--src/selinux.c5
-rw-r--r--src/shred.c7
-rw-r--r--src/shuf.c6
-rw-r--r--src/sort.c29
-rw-r--r--src/split.c68
-rw-r--r--src/stat.c16
-rw-r--r--src/stty.c26
-rw-r--r--src/sum.c15
-rw-r--r--src/sync.c10
-rw-r--r--src/system.h21
-rw-r--r--src/tac.c27
-rw-r--r--src/tail.c74
-rw-r--r--src/tee.c7
-rw-r--r--src/touch.c8
-rw-r--r--src/truncate.c22
-rw-r--r--src/tsort.c10
-rw-r--r--src/unexpand.c6
-rw-r--r--src/uniq.c8
-rw-r--r--src/unlink.c2
-rw-r--r--src/uptime.c2
-rw-r--r--src/users.c2
-rw-r--r--src/wc.c25
-rw-r--r--src/who.c2
-rwxr-xr-xtests/df/total-unprocessed.sh2
-rwxr-xr-xtests/du/files0-from-dir.sh4
-rwxr-xr-xtests/du/files0-from.pl8
-rwxr-xr-xtests/du/move-dir-while-traversing.sh2
-rwxr-xr-xtests/ln/hard-to-sym.sh4
-rwxr-xr-xtests/misc/dircolors.pl2
-rwxr-xr-xtests/misc/ls-misc.pl8
-rwxr-xr-xtests/misc/md5sum.pl10
-rwxr-xr-xtests/misc/readlink-fp-loop.sh6
-rwxr-xr-xtests/misc/sha1sum.pl6
-rwxr-xr-xtests/misc/shred-passes.sh64
-rwxr-xr-xtests/misc/sort-files0-from.pl6
-rwxr-xr-xtests/misc/sort.pl4
-rwxr-xr-xtests/misc/tsort.pl6
-rwxr-xr-xtests/misc/wc-files0-from.pl8
-rwxr-xr-xtests/rm/d-1.sh2
-rwxr-xr-xtests/rm/d-3.sh2
-rwxr-xr-xtests/rm/r-1.sh4
-rwxr-xr-xtests/rm/r-2.sh4
-rwxr-xr-xtests/rm/v-slash.sh2
-rwxr-xr-xtests/split/l-chunk.sh2
98 files changed, 702 insertions, 662 deletions
diff --git a/cfg.mk b/cfg.mk
index 208f2ce80..78f19fa56 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -187,6 +187,37 @@ sc_error_quotes:
exit 1; } \
|| :
+# Files in src/ should quote all file names in error() output
+# using quotef(), to provide quoting only when necessary,
+# but also provide better support for copy and paste when used.
+sc_error_shell_quotes:
+ @cd $(srcdir)/src && \
+ { GIT_PAGER= git grep -E \
+ 'error \(.*%s[:"], .*(name|file)[^"]*\);$$' *.c; \
+ GIT_PAGER= git grep -E \
+ ' quote[ _].*file' *.c; } \
+ | grep -Ev '(quotef|q[^ ]*name)' \
+ && { echo '$(ME): '"Use quotef() for colon delimited names" 1>&2; \
+ exit 1; } \
+ || :
+
+# Files in src/ should quote all file names in error() output
+# using quoteaf() when the name is separated with spaces,
+# to distinguish the file name at issue and
+# to provide better support for copy and paste.
+sc_error_shell_always_quotes:
+ @cd $(srcdir)/src && GIT_PAGER= git grep -E \
+ 'error \(.*[^:] %s[ "].*, .*(name|file)[^"]*\);$$' \
+ *.c | grep -Ev '(quoteaf|q[^ ]*name)' \
+ && { echo '$(ME): '"Use quoteaf() for space delimited names" 1>&2; \
+ exit 1; } \
+ || :
+ @cd $(srcdir)/src && GIT_PAGER= git grep -E -A1 \
+ 'error \([^%]*[^:] %s[ "]' *.c | grep 'quotef' \
+ && { echo '$(ME): '"Use quoteaf() for space delimited names" 1>&2; \
+ exit 1; } \
+ || :
+
sc_sun_os_names:
@grep -nEi \
'solaris[^[:alnum:]]*2\.(7|8|9|[1-9][0-9])|sunos[^[:alnum:]][6-9]' \
diff --git a/gl/lib/root-dev-ino.h b/gl/lib/root-dev-ino.h
index e6bf35e3c..409aef451 100644
--- a/gl/lib/root-dev-ino.h
+++ b/gl/lib/root-dev-ino.h
@@ -35,11 +35,11 @@ get_root_dev_ino (struct dev_ino *root_d_i);
{ \
if (STREQ (Dirname, "/")) \
error (0, 0, _("it is dangerous to operate recursively on %s"), \
- quote (Dirname)); \
+ quoteaf (Dirname)); \
else \
error (0, 0, \
_("it is dangerous to operate recursively on %s (same as %s)"), \
- quote_n (0, Dirname), quote_n (1, "/")); \
+ quoteaf_n (0, Dirname), quoteaf_n (1, "/")); \
error (0, 0, _("use --no-preserve-root to override this failsafe")); \
} \
while (0)
diff --git a/src/base64.c b/src/base64.c
index d5755ba5e..5ec9a9e0a 100644
--- a/src/base64.c
+++ b/src/base64.c
@@ -27,8 +27,8 @@
#include "system.h"
#include "error.h"
#include "fadvise.h"
-#include "xstrtol.h"
#include "quote.h"
+#include "xstrtol.h"
#include "xdectoint.h"
#include "xfreopen.h"
@@ -327,7 +327,7 @@ main (int argc, char **argv)
{
input_fh = fopen (infile, "rb");
if (input_fh == NULL)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
}
fadvise (input_fh, FADVISE_SEQUENTIAL);
@@ -342,7 +342,7 @@ main (int argc, char **argv)
if (STREQ (infile, "-"))
error (EXIT_FAILURE, errno, _("closing standard input"));
else
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
}
return EXIT_SUCCESS;
diff --git a/src/cat.c b/src/cat.c
index 01a66c0a1..777854c62 100644
--- a/src/cat.c
+++ b/src/cat.c
@@ -37,7 +37,6 @@
#include "error.h"
#include "fadvise.h"
#include "full-write.h"
-#include "quote.h"
#include "safe-read.h"
#include "xfreopen.h"
@@ -169,7 +168,7 @@ simple_cat (
n_read = safe_read (input_desc, buf, bufsize);
if (n_read == SAFE_READ_ERROR)
{
- error (0, errno, "%s", quote (infile));
+ error (0, errno, "%s", quotef (infile));
return false;
}
@@ -325,7 +324,7 @@ cat (
else
{
error (0, errno, _("cannot do ioctl on %s"),
- quote (infile));
+ quoteaf (infile));
newlines2 = newlines;
return false;
}
@@ -342,7 +341,7 @@ cat (
n_read = safe_read (input_desc, inbuf, insize);
if (n_read == SAFE_READ_ERROR)
{
- error (0, errno, "%s", quote (infile));
+ error (0, errno, "%s", quotef (infile));
write_pending (outbuf, &bpout);
newlines2 = newlines;
return false;
@@ -673,7 +672,7 @@ main (int argc, char **argv)
input_desc = open (infile, file_open_mode);
if (input_desc < 0)
{
- error (0, errno, "%s", quote (infile));
+ error (0, errno, "%s", quotef (infile));
ok = false;
continue;
}
@@ -681,7 +680,7 @@ main (int argc, char **argv)
if (fstat (input_desc, &stat_buf) < 0)
{
- error (0, errno, "%s", quote (infile));
+ error (0, errno, "%s", quotef (infile));
ok = false;
goto contin;
}
@@ -697,7 +696,7 @@ main (int argc, char **argv)
&& stat_buf.st_dev == out_dev && stat_buf.st_ino == out_ino
&& lseek (input_desc, 0, SEEK_CUR) < stat_buf.st_size)
{
- error (0, 0, _("%s: input file is output file"), quote (infile));
+ error (0, 0, _("%s: input file is output file"), quotef (infile));
ok = false;
goto contin;
}
@@ -755,7 +754,7 @@ main (int argc, char **argv)
contin:
if (!STREQ (infile, "-") && close (input_desc) < 0)
{
- error (0, errno, "%s", quote (infile));
+ error (0, errno, "%s", quotef (infile));
ok = false;
}
}
diff --git a/src/chcon.c b/src/chcon.c
index 4f51d70d4..4c255d0c0 100644
--- a/src/chcon.c
+++ b/src/chcon.c
@@ -153,7 +153,7 @@ change_file_context (int fd, char const *file)
if (status < 0 && errno != ENODATA)
{
error (0, errno, _("failed to get security context of %s"),
- quote (file));
+ quoteaf (file));
return 1;
}
@@ -163,7 +163,7 @@ change_file_context (int fd, char const *file)
if (file_context == NULL)
{
error (0, 0, _("can't apply partial context to unlabeled file %s"),
- quote (file));
+ quoteaf (file));
return 1;
}
@@ -187,7 +187,7 @@ change_file_context (int fd, char const *file)
{
errors = 1;
error (0, errno, _("failed to change context of %s to %s"),
- quote_n (0, file), quote_n (1, context_string));
+ quoteaf_n (0, file), quote_n (1, context_string));
}
}
@@ -251,18 +251,19 @@ process_file (FTS *fts, FTSENT *ent)
fts_set (fts, ent, FTS_AGAIN);
return true;
}
- error (0, ent->fts_errno, _("cannot access %s"), quote (file_full_name));
+ error (0, ent->fts_errno, _("cannot access %s"),
+ quoteaf (file_full_name));
ok = false;
break;
case FTS_ERR:
- error (0, ent->fts_errno, "%s", quote (file_full_name));
+ error (0, ent->fts_errno, "%s", quotef (file_full_name));
ok = false;
break;
case FTS_DNR:
error (0, ent->fts_errno, _("cannot read directory %s"),
- quote (file_full_name));
+ quoteaf (file_full_name));
ok = false;
break;
@@ -289,7 +290,7 @@ process_file (FTS *fts, FTSENT *ent)
{
if (verbose)
printf (_("changing security context of %s\n"),
- quote (file_full_name));
+ quoteaf (file_full_name));
if (change_file_context (fts->fts_cwd_fd, file) != 0)
ok = false;
@@ -543,7 +544,7 @@ main (int argc, char **argv)
if (getfilecon (reference_file, &ref_context) < 0)
error (EXIT_FAILURE, errno, _("failed to get security context of %s"),
- quote (reference_file));
+ quoteaf (reference_file));
specified_context = ref_context;
}
@@ -572,7 +573,7 @@ main (int argc, char **argv)
root_dev_ino = get_root_dev_ino (&dev_ino_buf);
if (root_dev_ino == NULL)
error (EXIT_FAILURE, errno, _("failed to get attributes of %s"),
- quote ("/"));
+ quoteaf ("/"));
}
else
{
diff --git a/src/chgrp.c b/src/chgrp.c
index eb1887e60..c07270cc9 100644
--- a/src/chgrp.c
+++ b/src/chgrp.c
@@ -89,7 +89,8 @@ parse_group (const char *name)
unsigned long int tmp;
if (! (xstrtoul (name, NULL, 10, &tmp, "") == LONGINT_OK
&& tmp <= GID_T_MAX))
- error (EXIT_FAILURE, 0, _("invalid group: %s"), quote (name));
+ error (EXIT_FAILURE, 0, _("invalid group: %s"),
+ quote (name));
gid = tmp;
}
endgrent (); /* Save a file descriptor. */
@@ -285,7 +286,7 @@ main (int argc, char **argv)
struct stat ref_stats;
if (stat (reference_file, &ref_stats))
error (EXIT_FAILURE, errno, _("failed to get attributes of %s"),
- quote (reference_file));
+ quoteaf (reference_file));
gid = ref_stats.st_gid;
chopt.group_name = gid_to_name (ref_stats.st_gid);
@@ -303,7 +304,7 @@ main (int argc, char **argv)
chopt.root_dev_ino = get_root_dev_ino (&dev_ino_buf);
if (chopt.root_dev_ino == NULL)
error (EXIT_FAILURE, errno, _("failed to get attributes of %s"),
- quote ("/"));
+ quoteaf ("/"));
}
bit_flags |= FTS_DEFER_STAT;
diff --git a/src/chmod.c b/src/chmod.c
index 988ba7269..4c952b363 100644
--- a/src/chmod.c
+++ b/src/chmod.c
@@ -124,7 +124,7 @@ mode_changed (int dir_fd, char const *file, char const *file_full_name,
{
if (! force_silent)
error (0, errno, _("getting new attributes of %s"),
- quote (file_full_name));
+ quoteaf (file_full_name));
return false;
}
@@ -148,7 +148,7 @@ describe_change (const char *file, mode_t old_mode, mode_t mode,
if (changed == CH_NOT_APPLIED)
{
printf (_("neither symbolic link %s nor referent has been changed\n"),
- quote (file));
+ quoteaf (file));
return;
}
@@ -168,13 +168,13 @@ describe_change (const char *file, mode_t old_mode, mode_t mode,
break;
case CH_NO_CHANGE_REQUESTED:
fmt = _("mode of %s retained as %04lo (%s)\n");
- printf (fmt, quote (file),
+ printf (fmt, quoteaf (file),
(unsigned long int) (mode & CHMOD_MODE_BITS), &perms[1]);
return;
default:
abort ();
}
- printf (fmt, quote (file),
+ printf (fmt, quoteaf (file),
(unsigned long int) (old_mode & CHMOD_MODE_BITS), &old_perms[1],
(unsigned long int) (mode & CHMOD_MODE_BITS), &perms[1]);
}
@@ -215,27 +215,27 @@ process_file (FTS *fts, FTSENT *ent)
}
if (! force_silent)
error (0, ent->fts_errno, _("cannot access %s"),
- quote (file_full_name));
+ quoteaf (file_full_name));
ok = false;
break;
case FTS_ERR:
if (! force_silent)
- error (0, ent->fts_errno, "%s", quote (file_full_name));
+ error (0, ent->fts_errno, "%s", quotef (file_full_name));
ok = false;
break;
case FTS_DNR:
if (! force_silent)
error (0, ent->fts_errno, _("cannot read directory %s"),
- quote (file_full_name));
+ quoteaf (file_full_name));
ok = false;
break;
case FTS_SLNONE:
if (! force_silent)
error (0, 0, _("cannot operate on dangling symlink %s"),
- quote (file_full_name));
+ quoteaf (file_full_name));
ok = false;
break;
@@ -275,7 +275,7 @@ process_file (FTS *fts, FTSENT *ent)
{
if (! force_silent)
error (0, errno, _("changing permissions of %s"),
- quote (file_full_name));
+ quoteaf (file_full_name));
ok = false;
}
}
@@ -311,7 +311,7 @@ process_file (FTS *fts, FTSENT *ent)
new_perms[10] = naively_expected_perms[10] = '\0';
error (0, 0,
_("%s: new permissions are %s, not %s"),
- quote (file_full_name),
+ quotef (file_full_name),
new_perms + 1, naively_expected_perms + 1);
ok = false;
}
@@ -536,7 +536,7 @@ main (int argc, char **argv)
change = mode_create_from_ref (reference_file);
if (!change)
error (EXIT_FAILURE, errno, _("failed to get attributes of %s"),
- quote (reference_file));
+ quoteaf (reference_file));
}
else
{
@@ -555,7 +555,7 @@ main (int argc, char **argv)
root_dev_ino = get_root_dev_ino (&dev_ino_buf);
if (root_dev_ino == NULL)
error (EXIT_FAILURE, errno, _("failed to get attributes of %s"),
- quote ("/"));
+ quoteaf ("/"));
}
else
{
diff --git a/src/chown-core.c b/src/chown-core.c
index e8a7d5289..0e5114606 100644
--- a/src/chown-core.c
+++ b/src/chown-core.c
@@ -26,7 +26,6 @@
#include "chown-core.h"
#include "error.h"
#include "ignore-value.h"
-#include "quote.h"
#include "root-dev-ino.h"
#include "xfts.h"
@@ -145,7 +144,7 @@ describe_change (const char *file, enum Change_status changed,
if (changed == CH_NOT_APPLIED)
{
printf (_("neither symbolic link %s nor referent has been changed\n"),
- quote (file));
+ quoteaf (file));
return;
}
@@ -185,7 +184,7 @@ describe_change (const char *file, enum Change_status changed,
abort ();
}
- printf (fmt, quote (file), old_spec, spec);
+ printf (fmt, quoteaf (file), old_spec, spec);
free (old_spec);
free (spec);
@@ -323,20 +322,20 @@ change_file_owner (FTS *fts, FTSENT *ent,
}
if (! chopt->force_silent)
error (0, ent->fts_errno, _("cannot access %s"),
- quote (file_full_name));
+ quoteaf (file_full_name));
ok = false;
break;
case FTS_ERR:
if (! chopt->force_silent)
- error (0, ent->fts_errno, "%s", quote (file_full_name));
+ error (0, ent->fts_errno, "%s", quotef (file_full_name));
ok = false;
break;
case FTS_DNR:
if (! chopt->force_silent)
error (0, ent->fts_errno, _("cannot read directory %s"),
- quote (file_full_name));
+ quoteaf (file_full_name));
ok = false;
break;
@@ -377,7 +376,7 @@ change_file_owner (FTS *fts, FTSENT *ent,
{
if (! chopt->force_silent)
error (0, errno, _("cannot dereference %s"),
- quote (file_full_name));
+ quoteaf (file_full_name));
ok = false;
}
@@ -466,7 +465,7 @@ change_file_owner (FTS *fts, FTSENT *ent,
error (0, errno, (uid != (uid_t) -1
? _("changing ownership of %s")
: _("changing group of %s")),
- quote (file_full_name));
+ quoteaf (file_full_name));
}
if (chopt->verbosity != V_off)
diff --git a/src/chown.c b/src/chown.c
index ba1814b41..79606e68b 100644
--- a/src/chown.c
+++ b/src/chown.c
@@ -287,7 +287,7 @@ main (int argc, char **argv)
struct stat ref_stats;
if (stat (reference_file, &ref_stats))
error (EXIT_FAILURE, errno, _("failed to get attributes of %s"),
- quote (reference_file));
+ quoteaf (reference_file));
uid = ref_stats.st_uid;
gid = ref_stats.st_gid;
@@ -316,7 +316,7 @@ main (int argc, char **argv)
chopt.root_dev_ino = get_root_dev_ino (&dev_ino_buf);
if (chopt.root_dev_ino == NULL)
error (EXIT_FAILURE, errno, _("failed to get attributes of %s"),
- quote ("/"));
+ quoteaf ("/"));
}
bit_flags |= FTS_DEFER_STAT;
diff --git a/src/chroot.c b/src/chroot.c
index 9551d934f..ec2f5c444 100644
--- a/src/chroot.c
+++ b/src/chroot.c
@@ -200,7 +200,7 @@ Run COMMAND with root directory set to NEWROOT.\n\
"), stdout);
printf (_("\
--skip-chdir do not change working directory to %s\n\
-"), quote ("/"));
+"), quoteaf ("/"));
fputs (HELP_OPTION_DESCRIPTION, stdout);
fputs (VERSION_OPTION_DESCRIPTION, stdout);
@@ -284,7 +284,7 @@ main (int argc, char **argv)
if (! is_oldroot && skip_chdir)
{
error (0, 0, _("option --skip-chdir only permitted if NEWROOT is old %s"),
- quote ("/"));
+ quoteaf ("/"));
usage (EXIT_CANCELED);
}
@@ -327,7 +327,7 @@ main (int argc, char **argv)
if (chroot (newroot) != 0)
error (EXIT_CANCELED, errno, _("cannot change root directory to %s"),
- quote (newroot));
+ quoteaf (newroot));
if (! skip_chdir && chdir ("/"))
error (EXIT_CANCELED, errno, _("cannot chdir to root directory"));
diff --git a/src/cksum.c b/src/cksum.c
index 2a19c678a..ef51010b2 100644
--- a/src/cksum.c
+++ b/src/cksum.c
@@ -44,7 +44,6 @@
#include <stdint.h>
#include "system.h"
#include "fadvise.h"
-#include "quote.h"
#include "xfreopen.h"
#ifdef CRCTAB
@@ -202,7 +201,7 @@ cksum (const char *file, bool print_name)
fp = fopen (file, (O_BINARY ? "rb" : "r"));
if (fp == NULL)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
}
@@ -214,7 +213,7 @@ cksum (const char *file, bool print_name)
unsigned char *cp = buf;
if (length + bytes_read < length)
- error (EXIT_FAILURE, 0, _("%s: file too long"), quote (file));
+ error (EXIT_FAILURE, 0, _("%s: file too long"), quotef (file));
length += bytes_read;
while (bytes_read--)
crc = (crc << 8) ^ crctab[((crc >> 24) ^ *cp++) & 0xFF];
@@ -224,7 +223,7 @@ cksum (const char *file, bool print_name)
if (ferror (fp))
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
if (!STREQ (file, "-"))
fclose (fp);
return false;
@@ -232,7 +231,7 @@ cksum (const char *file, bool print_name)
if (!STREQ (file, "-") && fclose (fp) == EOF)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
diff --git a/src/comm.c b/src/comm.c
index a6fbde196..d4c9f24df 100644
--- a/src/comm.c
+++ b/src/comm.c
@@ -274,13 +274,13 @@ compare_files (char **infiles)
alt[i][2] = 0;
streams[i] = (STREQ (infiles[i], "-") ? stdin : fopen (infiles[i], "r"));
if (!streams[i])
- error (EXIT_FAILURE, errno, "%s", quote (infiles[i]));
+ error (EXIT_FAILURE, errno, "%s", quotef (infiles[i]));
fadvise (streams[i], FADVISE_SEQUENTIAL);
thisline[i] = readlinebuffer (all_line[i][alt[i][0]], streams[i]);
if (ferror (streams[i]))
- error (EXIT_FAILURE, errno, "%s", quote (infiles[i]));
+ error (EXIT_FAILURE, errno, "%s", quotef (infiles[i]));
}
while (thisline[0] || thisline[1])
@@ -350,7 +350,7 @@ compare_files (char **infiles)
all_line[i][alt[i][1]], i + 1);
if (ferror (streams[i]))
- error (EXIT_FAILURE, errno, "%s", quote (infiles[i]));
+ error (EXIT_FAILURE, errno, "%s", quotef (infiles[i]));
fill_up[i] = false;
}
@@ -358,7 +358,7 @@ compare_files (char **infiles)
for (i = 0; i < 2; i++)
if (fclose (streams[i]) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (infiles[i]));
+ error (EXIT_FAILURE, errno, "%s", quotef (infiles[i]));
}
int
diff --git a/src/copy.c b/src/copy.c
index edf022ef1..dc1cd2904 100644
--- a/src/copy.c
+++ b/src/copy.c
@@ -178,7 +178,7 @@ create_hole (int fd, char const *name, bool punch_holes, off_t size)
if (file_end < 0)
{
- error (0, errno, _("cannot lseek %s"), quote (name));
+ error (0, errno, _("cannot lseek %s"), quoteaf (name));
return false;
}
@@ -188,7 +188,7 @@ create_hole (int fd, char const *name, bool punch_holes, off_t size)
then make this allocation permanent. */
if (punch_holes && punch_hole (fd, file_end - size, size) < 0)
{
- error (0, errno, _("error deallocating %s"), quote (name));
+ error (0, errno, _("error deallocating %s"), quoteaf (name));
return false;
}
@@ -226,7 +226,7 @@ sparse_copy (int src_fd, int dest_fd, char *buf, size_t buf_size,
{
if (errno == EINTR)
continue;
- error (0, errno, _("error reading %s"), quote (src_name));
+ error (0, errno, _("error reading %s"), quoteaf (src_name));
return false;
}
if (n_read == 0)
@@ -259,7 +259,8 @@ sparse_copy (int src_fd, int dest_fd, char *buf, size_t buf_size,
{
if (full_write (dest_fd, pbuf, psize) != psize)
{
- error (0, errno, _("error writing %s"), quote (dst_name));
+ error (0, errno, _("error writing %s"),
+ quoteaf (dst_name));
return false;
}
}
@@ -289,7 +290,7 @@ sparse_copy (int src_fd, int dest_fd, char *buf, size_t buf_size,
psize += csize;
else
{
- error (0, 0, _("overflow reading %s"), quote (src_name));
+ error (0, 0, _("overflow reading %s"), quoteaf (src_name));
return false;
}
}
@@ -407,7 +408,7 @@ extent_copy (int src_fd, int dest_fd, char *buf, size_t buf_size,
}
error (0, errno, _("%s: failed to get extents info"),
- quote (src_name));
+ quotef (src_name));
return false;
}
@@ -439,7 +440,7 @@ extent_copy (int src_fd, int dest_fd, char *buf, size_t buf_size,
{
if (lseek (src_fd, ext_start, SEEK_SET) < 0)
{
- error (0, errno, _("cannot lseek %s"), quote (src_name));
+ error (0, errno, _("cannot lseek %s"), quoteaf (src_name));
fail:
extent_scan_free (&scan);
return false;
@@ -465,7 +466,8 @@ extent_copy (int src_fd, int dest_fd, char *buf, size_t buf_size,
if (! write_zeros (dest_fd, nzeros))
{
- error (0, errno, _("%s: write failed"), quote (dst_name));
+ error (0, errno, _("%s: write failed"),
+ quotef (dst_name));
goto fail;
}
@@ -534,14 +536,14 @@ extent_copy (int src_fd, int dest_fd, char *buf, size_t buf_size,
? ftruncate (dest_fd, src_total_size)
: ! write_zeros (dest_fd, src_total_size - dest_pos)))
{
- error (0, errno, _("failed to extend %s"), quote (dst_name));
+ error (0, errno, _("failed to extend %s"), quoteaf (dst_name));
return false;
}
if (sparse_mode == SPARSE_ALWAYS && dest_pos < src_total_size
&& punch_hole (dest_fd, dest_pos, src_total_size - dest_pos) < 0)
{
- error (0, errno, _("error deallocating %s"), quote (dst_name));
+ error (0, errno, _("error deallocating %s"), quoteaf (dst_name));
return false;
}
@@ -604,7 +606,7 @@ copy_attr_allerror (struct error_context *ctx _GL_UNUSED,
static char const *
copy_attr_quote (struct error_context *ctx _GL_UNUSED, char const *str)
{
- return quote (str);
+ return quoteaf (str);
}
static void
@@ -695,7 +697,7 @@ copy_dir (char const *src_name_in, char const *dst_name_in, bool new_dst,
{
/* This diagnostic is a bit vague because savedir can fail in
several different ways. */
- error (0, errno, _("cannot access %s"), quote (src_name_in));
+ error (0, errno, _("cannot access %s"), quoteaf (src_name_in));
return false;
}
@@ -777,7 +779,7 @@ set_owner (const struct cp_options *x, char const *dst_name, int dest_desc,
{
if (! owner_failure_ok (x))
error (0, errno, _("clearing permissions for %s"),
- quote (dst_name));
+ quoteaf (dst_name));
return -x->require_preserve;
}
}
@@ -812,7 +814,7 @@ set_owner (const struct cp_options *x, char const *dst_name, int dest_desc,
if (! chown_failure_ok (x))
{
error (0, errno, _("failed to preserve ownership for %s"),
- quote (dst_name));
+ quoteaf (dst_name));
if (x->require_preserve)
return -1;
}
@@ -837,13 +839,13 @@ set_author (const char *dst_name, int dest_desc, const struct stat *src_sb)
? file_name_lookup (dst_name, 0, 0)
: getdport (dest_desc));
if (file == MACH_PORT_NULL)
- error (0, errno, _("failed to lookup file %s"), quote (dst_name));
+ error (0, errno, _("failed to lookup file %s"), quoteaf (dst_name));
else
{
error_t err = file_chauthor (file, src_sb->st_author);
if (err)
error (0, err, _("failed to preserve authorship for %s"),
- quote (dst_name));
+ quoteaf (dst_name));
mach_port_deallocate (mach_task_self (), file);
}
#else
@@ -895,7 +897,7 @@ set_process_security_ctx (char const *src_name, char const *dst_name,
{
error (0, errno,
_("failed to get security context of %s"),
- quote (src_name));
+ quoteaf (src_name));
}
if (x->require_preserve_context)
return false;
@@ -910,7 +912,7 @@ set_process_security_ctx (char const *src_name, char const *dst_name,
{
error (0, errno,
_("failed to set default file creation context for %s"),
- quote (dst_name));
+ quoteaf (dst_name));
}
}
@@ -936,7 +938,7 @@ set_file_security_ctx (char const *dst_name, bool process_local,
{
if (all_errors || (some_errors && !errno_unsupported (errno)))
error (0, errno, _("failed to set the security context of %s"),
- quote_n (0, dst_name));
+ quoteaf_n (0, dst_name));
return false;
}
@@ -1008,13 +1010,13 @@ copy_reg (char const *src_name, char const *dst_name,
| (x->dereference == DEREF_NEVER ? O_NOFOLLOW : 0)));
if (source_desc < 0)
{
- error (0, errno, _("cannot open %s for reading"), quote (src_name));
+ error (0, errno, _("cannot open %s for reading"), quoteaf (src_name));
return false;
}
if (fstat (source_desc, &src_open_sb) != 0)
{
- error (0, errno, _("cannot fstat %s"), quote (src_name));
+ error (0, errno, _("cannot fstat %s"), quoteaf (src_name));
return_val = false;
goto close_src_desc;
}
@@ -1025,7 +1027,7 @@ copy_reg (char const *src_name, char const *dst_name,
{
error (0, 0,
_("skipping file %s, as it was replaced while being copied"),
- quote (src_name));
+ quoteaf (src_name));
return_val = false;
goto close_src_desc;
}
@@ -1064,12 +1066,12 @@ copy_reg (char const *src_name, char const *dst_name,
{
if (unlink (dst_name) != 0)
{
- error (0, errno, _("cannot remove %s"), quote (dst_name));
+ error (0, errno, _("cannot remove %s"), quoteaf (dst_name));
return_val = false;
goto close_src_desc;
}
if (x->verbose)
- printf (_("removed %s\n"), quote (dst_name));
+ printf (_("removed %s\n"), quoteaf (dst_name));
/* Tell caller that the destination file was unlinked. */
*new_dst = true;
@@ -1122,7 +1124,7 @@ copy_reg (char const *src_name, char const *dst_name,
else
{
error (0, 0, _("not writing through dangling symlink %s"),
- quote (dst_name));
+ quoteaf (dst_name));
return_val = false;
goto close_src_desc;
}
@@ -1160,14 +1162,14 @@ copy_reg (char const *src_name, char const *dst_name,
/* Otherwise, it's an error. */
error (0, dest_errno, _("cannot create regular file %s"),
- quote (dst_name));
+ quoteaf (dst_name));
return_val = false;
goto close_src_desc;
}
if (fstat (dest_desc, &sb) != 0)
{
- error (0, errno, _("cannot fstat %s"), quote (dst_name));
+ error (0, errno, _("cannot fstat %s"), quoteaf (dst_name));
return_val = false;
goto close_src_and_dst_desc;
}
@@ -1181,7 +1183,7 @@ copy_reg (char const *src_name, char const *dst_name,
if (!clone_ok)
{
error (0, errno, _("failed to clone %s from %s"),
- quote_n (0, dst_name), quote_n (1, src_name));
+ quoteaf_n (0, dst_name), quoteaf_n (1, src_name));
return_val = false;
goto close_src_and_dst_desc;
}
@@ -1278,7 +1280,7 @@ copy_reg (char const *src_name, char const *dst_name,
}
else if (wrote_hole_at_eof && ftruncate (dest_desc, n_read) < 0)
{
- error (0, errno, _("failed to extend %s"), quote (dst_name));
+ error (0, errno, _("failed to extend %s"), quoteaf (dst_name));
return_val = false;
goto close_src_and_dst_desc;
}
@@ -1293,7 +1295,7 @@ preserve_metadata:
if (fdutimens (dest_desc, dst_name, timespec) != 0)
{
- error (0, errno, _("preserving times for %s"), quote (dst_name));
+ error (0, errno, _("preserving times for %s"), quoteaf (dst_name));
if (x->require_preserve)
{
return_val = false;
@@ -1361,7 +1363,7 @@ preserve_metadata:
&& fchmod_or_lchmod (dest_desc, dst_name, dst_mode) != 0)
{
error (0, errno, _("preserving permissions for %s"),
- quote (dst_name));
+ quoteaf (dst_name));
if (x->require_preserve)
return_val = false;
}
@@ -1370,13 +1372,13 @@ preserve_metadata:
close_src_and_dst_desc:
if (close (dest_desc) < 0)
{
- error (0, errno, _("failed to close %s"), quote (dst_name));
+ error (0, errno, _("failed to close %s"), quoteaf (dst_name));
return_val = false;
}
close_src_desc:
if (close (source_desc) < 0)
{
- error (0, errno, _("failed to close %s"), quote (src_name));
+ error (0, errno, _("failed to close %s"), quoteaf (src_name));
return_val = false;
}
@@ -1654,14 +1656,14 @@ overwrite_ok (struct cp_options const *x, char const *dst_name,
|| x->unlink_dest_after_failed_open)
? _("%s: replace %s, overriding mode %04lo (%s)? ")
: _("%s: unwritable %s (mode %04lo, %s); try anyway? "),
- program_name, quote (dst_name),
+ program_name, quoteaf (dst_name),
(unsigned long int) (dst_sb->st_mode & CHMOD_MODE_BITS),
&perms[1]);
}
else
{
fprintf (stderr, _("%s: overwrite %s? "),
- program_name, quote (dst_name));
+ program_name, quoteaf (dst_name));
}
return yesno ();
@@ -1728,9 +1730,9 @@ abandon_move (const struct cp_options *x,
static void
emit_verbose (char const *src, char const *dst, char const *backup_dst_name)
{
- printf ("%s -> %s", quote_n (0, src), quote_n (1, dst));
+ printf ("%s -> %s", quoteaf_n (0, src), quoteaf_n (1, dst));
if (backup_dst_name)
- printf (_(" (backup: %s)"), quote (backup_dst_name));
+ printf (_(" (backup: %s)"), quoteaf (backup_dst_name));
putchar ('\n');
}
@@ -1767,11 +1769,11 @@ create_hard_link (char const *src_name, char const *dst_name,
{
if (unlink (dst_name) != 0)
{
- error (0, errno, _("cannot remove %s"), quote (dst_name));
+ error (0, errno, _("cannot remove %s"), quoteaf (dst_name));
return false;
}
if (verbose)
- printf (_("removed %s\n"), quote (dst_name));
+ printf (_("removed %s\n"), quoteaf (dst_name));
link_failed = (linkat (AT_FDCWD, src_name, AT_FDCWD, dst_name, flags)
!= 0);
}
@@ -1779,7 +1781,7 @@ create_hard_link (char const *src_name, char const *dst_name,
if (link_failed)
{
error (0, errno, _("cannot create hard link %s to %s"),
- quote_n (0, dst_name), quote_n (1, src_name));
+ quoteaf_n (0, dst_name), quoteaf_n (1, src_name));
return false;
}
@@ -1841,7 +1843,7 @@ copy_internal (char const *src_name, char const *dst_name,
if (XSTAT (x, src_name, &src_sb) != 0)
{
- error (0, errno, _("cannot stat %s"), quote (src_name));
+ error (0, errno, _("cannot stat %s"), quoteaf (src_name));
return false;
}
@@ -1849,7 +1851,7 @@ copy_internal (char const *src_name, char const *dst_name,
if (S_ISDIR (src_mode) && !x->recursive)
{
- error (0, 0, _("omitting directory %s"), quote (src_name));
+ error (0, 0, _("omitting directory %s"), quoteaf (src_name));
return false;
}
@@ -1864,7 +1866,7 @@ copy_internal (char const *src_name, char const *dst_name,
&& seen_file (x->src_info, src_name, &src_sb))
{
error (0, 0, _("warning: source file %s specified more than once"),
- quote (src_name));
+ quoteaf (src_name));
return true;
}
@@ -1895,7 +1897,7 @@ copy_internal (char const *src_name, char const *dst_name,
{
if (errno != ENOENT)
{
- error (0, errno, _("cannot stat %s"), quote (dst_name));
+ error (0, errno, _("cannot stat %s"), quoteaf (dst_name));
return false;
}
else
@@ -1913,7 +1915,7 @@ copy_internal (char const *src_name, char const *dst_name,
x, &return_now))
{
error (0, 0, _("%s and %s are the same file"),
- quote_n (0, src_name), quote_n (1, dst_name));
+ quoteaf_n (0, src_name), quoteaf_n (1, dst_name));
return false;
}
@@ -2003,7 +2005,7 @@ copy_internal (char const *src_name, char const *dst_name,
{
error (0, 0,
_("cannot overwrite non-directory %s with directory %s"),
- quote_n (0, dst_name), quote_n (1, src_name));
+ quoteaf_n (0, dst_name), quoteaf_n (1, src_name));
return false;
}
}
@@ -2021,7 +2023,7 @@ copy_internal (char const *src_name, char const *dst_name,
{
error (0, 0,
_("will not overwrite just-created %s with %s"),
- quote_n (0, dst_name), quote_n (1, src_name));
+ quoteaf_n (0, dst_name), quoteaf_n (1, src_name));
return false;
}
}
@@ -2039,7 +2041,7 @@ copy_internal (char const *src_name, char const *dst_name,
{
error (0, 0,
_("cannot overwrite directory %s with non-directory"),
- quote (dst_name));
+ quoteaf (dst_name));
return false;
}
}
@@ -2053,7 +2055,7 @@ copy_internal (char const *src_name, char const *dst_name,
{
error (0, 0,
_("cannot move directory onto non-directory: %s -> %s"),
- quote_n (0, src_name), quote_n (0, dst_name));
+ quotef_n (0, src_name), quotef_n (0, dst_name));
return false;
}
}
@@ -2085,8 +2087,8 @@ copy_internal (char const *src_name, char const *dst_name,
? _("backing up %s would destroy source; %s not moved")
: _("backing up %s would destroy source; %s not copied"));
error (0, 0, fmt,
- quote_n (0, dst_name),
- quote_n (1, src_name));
+ quoteaf_n (0, dst_name),
+ quoteaf_n (1, src_name));
free (tmp_backup);
return false;
}
@@ -2106,7 +2108,8 @@ copy_internal (char const *src_name, char const *dst_name,
{
if (errno != ENOENT)
{
- error (0, errno, _("cannot backup %s"), quote (dst_name));
+ error (0, errno, _("cannot backup %s"),
+ quoteaf (dst_name));
return false;
}
else
@@ -2131,12 +2134,12 @@ copy_internal (char const *src_name, char const *dst_name,
{
if (unlink (dst_name) != 0 && errno != ENOENT)
{
- error (0, errno, _("cannot remove %s"), quote (dst_name));
+ error (0, errno, _("cannot remove %s"), quoteaf (dst_name));
return false;
}
new_dst = true;
if (x->verbose)
- printf (_("removed %s\n"), quote (dst_name));
+ printf (_("removed %s\n"), quoteaf (dst_name));
}
}
}
@@ -2171,7 +2174,7 @@ copy_internal (char const *src_name, char const *dst_name,
{
error (0, 0,
_("will not copy %s through just-created symlink %s"),
- quote_n (0, src_name), quote_n (1, dst_name));
+ quoteaf_n (0, src_name), quoteaf_n (1, dst_name));
return false;
}
}
@@ -2248,8 +2251,8 @@ copy_internal (char const *src_name, char const *dst_name,
if (same_name (src_name, earlier_file))
{
error (0, 0, _("cannot copy a directory, %s, into itself, %s"),
- quote_n (0, top_level_src_name),
- quote_n (1, top_level_dst_name));
+ quoteaf_n (0, top_level_src_name),
+ quoteaf_n (1, top_level_dst_name));
*copy_into_self = true;
goto un_backup;
}
@@ -2257,7 +2260,7 @@ copy_internal (char const *src_name, char const *dst_name,
{
error (0, 0, _("warning: source directory %s "
"specified more than once"),
- quote (top_level_src_name));
+ quoteaf (top_level_src_name));
/* We only do backups in move mode and for non dirs,
and in move mode this won't be the issue as the source will
be missing for subsequent attempts.
@@ -2278,7 +2281,7 @@ copy_internal (char const *src_name, char const *dst_name,
else
{
error (0, 0, _("will not create hard link %s to directory %s"),
- quote_n (0, dst_name), quote_n (1, earlier_file));
+ quoteaf_n (0, dst_name), quoteaf_n (1, earlier_file));
goto un_backup;
}
}
@@ -2335,8 +2338,8 @@ copy_internal (char const *src_name, char const *dst_name,
failing with a specific errno value. Expect problems on
non-POSIX systems. */
error (0, 0, _("cannot move %s to a subdirectory of itself, %s"),
- quote_n (0, top_level_src_name),
- quote_n (1, top_level_dst_name));
+ quoteaf_n (0, top_level_src_name),
+ quoteaf_n (1, top_level_dst_name));
/* Note that there is no need to call forget_created here,
(compare with the other calls in this file) since the
@@ -2378,7 +2381,7 @@ copy_internal (char const *src_name, char const *dst_name,
fail. Etc. */
error (0, errno,
_("cannot move %s to %s"),
- quote_n (0, src_name), quote_n (1, dst_name));
+ quoteaf_n (0, src_name), quoteaf_n (1, dst_name));
forget_created (src_sb.st_ino, src_sb.st_dev);
return false;
}
@@ -2394,7 +2397,7 @@ copy_internal (char const *src_name, char const *dst_name,
{
error (0, errno,
_("inter-device move failed: %s to %s; unable to remove target"),
- quote_n (0, src_name), quote_n (1, dst_name));
+ quoteaf_n (0, src_name), quoteaf_n (1, dst_name));
forget_created (src_sb.st_ino, src_sb.st_dev);
return false;
}
@@ -2434,7 +2437,7 @@ copy_internal (char const *src_name, char const *dst_name,
if (is_ancestor (&src_sb, ancestors))
{
error (0, 0, _("cannot copy cyclic symbolic link %s"),
- quote (src_name));
+ quoteaf (src_name));
goto un_backup;
}
@@ -2454,7 +2457,7 @@ copy_internal (char const *src_name, char const *dst_name,
if (mkdir (dst_name, dst_mode_bits & ~omitted_permissions) != 0)
{
error (0, errno, _("cannot create directory %s"),
- quote (dst_name));
+ quoteaf (dst_name));
goto un_backup;
}
@@ -2464,7 +2467,7 @@ copy_internal (char const *src_name, char const *dst_name,
if (lstat (dst_name, &dst_sb) != 0)
{
- error (0, errno, _("cannot stat %s"), quote (dst_name));
+ error (0, errno, _("cannot stat %s"), quoteaf (dst_name));
goto un_backup;
}
else if ((dst_sb.st_mode & S_IRWXU) != S_IRWXU)
@@ -2477,7 +2480,7 @@ copy_internal (char const *src_name, char const *dst_name,
if (lchmod (dst_name, dst_mode | S_IRWXU) != 0)
{
error (0, errno, _("setting permissions for %s"),
- quote (dst_name));
+ quoteaf (dst_name));
goto un_backup;
}
}
@@ -2554,14 +2557,14 @@ copy_internal (char const *src_name, char const *dst_name,
{
error (0, 0,
_("%s: can make relative symbolic links only in current directory"),
- quote (dst_name));
+ quotef (dst_name));
goto un_backup;
}
}
if (symlink (src_name, dst_name) != 0)
{
error (0, errno, _("cannot create symbolic link %s to %s"),
- quote_n (0, dst_name), quote_n (1, src_name));
+ quoteaf_n (0, dst_name), quoteaf_n (1, src_name));
goto un_backup;
}
}
@@ -2612,7 +2615,7 @@ copy_internal (char const *src_name, char const *dst_name,
if (mknod (dst_name, src_mode & ~omitted_permissions, 0) != 0)
if (mkfifo (dst_name, src_mode & ~S_IFIFO & ~omitted_permissions) != 0)
{
- error (0, errno, _("cannot create fifo %s"), quote (dst_name));
+ error (0, errno, _("cannot create fifo %s"), quoteaf (dst_name));
goto un_backup;
}
}
@@ -2622,7 +2625,7 @@ copy_internal (char const *src_name, char const *dst_name,
!= 0)
{
error (0, errno, _("cannot create special file %s"),
- quote (dst_name));
+ quoteaf (dst_name));
goto un_backup;
}
}
@@ -2632,7 +2635,8 @@ copy_internal (char const *src_name, char const *dst_name,
dest_is_symlink = true;
if (src_link_val == NULL)
{
- error (0, errno, _("cannot read symbolic link %s"), quote (src_name));
+ error (0, errno, _("cannot read symbolic link %s"),
+ quoteaf (src_name));
goto un_backup;
}
@@ -2660,7 +2664,7 @@ copy_internal (char const *src_name, char const *dst_name,
if (! same_link)
{
error (0, saved_errno, _("cannot create symbolic link %s"),
- quote (dst_name));
+ quoteaf (dst_name));
goto un_backup;
}
}
@@ -2691,7 +2695,7 @@ copy_internal (char const *src_name, char const *dst_name,
}
else
{
- error (0, 0, _("%s has unknown file type"), quote (src_name));
+ error (0, 0, _("%s has unknown file type"), quoteaf (src_name));
goto un_backup;
}
@@ -2750,7 +2754,7 @@ copy_internal (char const *src_name, char const *dst_name,
: utimens (dst_name, timespec))
!= 0)
{
- error (0, errno, _("preserving times for %s"), quote (dst_name));
+ error (0, errno, _("preserving times for %s"), quoteaf (dst_name));
if (x->require_preserve)
return false;
}
@@ -2814,7 +2818,7 @@ copy_internal (char const *src_name, char const *dst_name,
rules for special mode bits. */
if (new_dst && lstat (dst_name, &dst_sb) != 0)
{
- error (0, errno, _("cannot stat %s"), quote (dst_name));
+ error (0, errno, _("cannot stat %s"), quoteaf (dst_name));
return false;
}
dst_mode = dst_sb.st_mode;
@@ -2828,7 +2832,7 @@ copy_internal (char const *src_name, char const *dst_name,
if (lchmod (dst_name, dst_mode | omitted_permissions) != 0)
{
error (0, errno, _("preserving permissions for %s"),
- quote (dst_name));
+ quoteaf (dst_name));
if (x->require_preserve)
return false;
}
@@ -2854,12 +2858,12 @@ un_backup:
if (dst_backup)
{
if (rename (dst_backup, dst_name) != 0)
- error (0, errno, _("cannot un-backup %s"), quote (dst_name));
+ error (0, errno, _("cannot un-backup %s"), quoteaf (dst_name));
else
{
if (x->verbose)
printf (_("%s -> %s (unbackup)\n"),
- quote_n (0, dst_backup), quote_n (1, dst_name));
+ quoteaf_n (0, dst_backup), quoteaf_n (1, dst_name));
}
}
return false;
diff --git a/src/coreutils.c b/src/coreutils.c
index 7f868347d..4141346b3 100644
--- a/src/coreutils.c
+++ b/src/coreutils.c
@@ -174,7 +174,8 @@ main (int argc, char **argv)
{
argv[nskip] = arg_name; /* XXX: Discards any specified path. */
launch_program (prog_name, argc - nskip, argv + nskip);
- error (EXIT_FAILURE, 0, _("unknown program %s"), quote (prog_name));
+ error (EXIT_FAILURE, 0, _("unknown program %s"),
+ quote (prog_name));
}
}
@@ -198,7 +199,8 @@ main (int argc, char **argv)
/* Only print the error message when no options have been passed
to coreutils. */
if (optind == 1 && prog_name && !STREQ (prog_name, "coreutils"))
- error (0, 0, _("unknown program %s"), quote (prog_name));
+ error (0, 0, _("unknown program %s"),
+ quote (prog_name));
usage (EXIT_FAILURE);
}
diff --git a/src/cp.c b/src/cp.c
index 0ffd12d85..8fb5e444f 100644
--- a/src/cp.c
+++ b/src/cp.c
@@ -322,7 +322,7 @@ re_protect (char const *const_dst_name, size_t src_offset,
if (utimens (dst_name, timespec))
{
error (0, errno, _("failed to preserve times for %s"),
- quote (dst_name));
+ quoteaf (dst_name));
return false;
}
}
@@ -334,7 +334,7 @@ re_protect (char const *const_dst_name, size_t src_offset,
if (! chown_failure_ok (x))
{
error (0, errno, _("failed to preserve ownership for %s"),
- quote (dst_name));
+ quoteaf (dst_name));
return false;
}
/* Failing to preserve ownership is OK. Still, try to preserve
@@ -353,7 +353,7 @@ re_protect (char const *const_dst_name, size_t src_offset,
if (lchmod (dst_name, p->st.st_mode) != 0)
{
error (0, errno, _("failed to preserve permissions for %s"),
- quote (dst_name));
+ quoteaf (dst_name));
return false;
}
}
@@ -436,7 +436,7 @@ make_dir_parents_private (char const *const_dir, size_t src_offset,
if (src_errno)
{
error (0, src_errno, _("failed to get attributes of %s"),
- quote (src));
+ quoteaf (src));
return false;
}
@@ -480,7 +480,7 @@ make_dir_parents_private (char const *const_dir, size_t src_offset,
if (mkdir (dir, mkdir_mode) != 0)
{
error (0, errno, _("cannot make directory %s"),
- quote (dir));
+ quoteaf (dir));
return false;
}
else
@@ -496,7 +496,7 @@ make_dir_parents_private (char const *const_dir, size_t src_offset,
if (lstat (dir, &stats))
{
error (0, errno, _("failed to get attributes of %s"),
- quote (dir));
+ quoteaf (dir));
return false;
}
@@ -521,7 +521,7 @@ make_dir_parents_private (char const *const_dir, size_t src_offset,
if (lchmod (dir, stats.st_mode | S_IRWXU) != 0)
{
error (0, errno, _("setting permissions for %s"),
- quote (dir));
+ quoteaf (dir));
return false;
}
}
@@ -529,7 +529,7 @@ make_dir_parents_private (char const *const_dir, size_t src_offset,
else if (!S_ISDIR (stats.st_mode))
{
error (0, 0, _("%s exists but is not a directory"),
- quote (dir));
+ quoteaf (dir));
return false;
}
else
@@ -547,7 +547,7 @@ make_dir_parents_private (char const *const_dir, size_t src_offset,
else if (!S_ISDIR (stats.st_mode))
{
- error (0, 0, _("%s exists but is not a directory"), quote (dst_dir));
+ error (0, 0, _("%s exists but is not a directory"), quoteaf (dst_dir));
return false;
}
else
@@ -574,7 +574,7 @@ target_directory_operand (char const *file, struct stat *st, bool *new_dst)
if (err)
{
if (err != ENOENT)
- error (EXIT_FAILURE, err, _("failed to access %s"), quote (file));
+ error (EXIT_FAILURE, err, _("failed to access %s"), quoteaf (file));
*new_dst = true;
}
return is_a_dir;
@@ -597,7 +597,7 @@ do_copy (int n_files, char **file, const char *target_directory,
error (0, 0, _("missing file operand"));
else
error (0, 0, _("missing destination file operand after %s"),
- quote (file[0]));
+ quoteaf (file[0]));
usage (EXIT_FAILURE);
}
@@ -609,7 +609,7 @@ do_copy (int n_files, char **file, const char *target_directory,
"and --no-target-directory (-T)"));
if (2 < n_files)
{
- error (0, 0, _("extra operand %s"), quote (file[2]));
+ error (0, 0, _("extra operand %s"), quoteaf (file[2]));
usage (EXIT_FAILURE);
}
/* Update NEW_DST and SB, which may be checked below. */
@@ -622,7 +622,7 @@ do_copy (int n_files, char **file, const char *target_directory,
target_directory = file[--n_files];
else if (2 < n_files)
error (EXIT_FAILURE, 0, _("target %s is not a directory"),
- quote (file[n_files - 1]));
+ quoteaf (file[n_files - 1]));
}
if (target_directory)
@@ -1077,10 +1077,10 @@ main (int argc, char **argv)
struct stat st;
if (stat (optarg, &st) != 0)
error (EXIT_FAILURE, errno, _("failed to access %s"),
- quote (optarg));
+ quoteaf (optarg));
if (! S_ISDIR (st.st_mode))
error (EXIT_FAILURE, 0, _("target %s is not a directory"),
- quote (optarg));
+ quoteaf (optarg));
}
target_directory = optarg;
break;
diff --git a/src/csplit.c b/src/csplit.c
index 6507c1177..c97acb862 100644
--- a/src/csplit.c
+++ b/src/csplit.c
@@ -651,7 +651,8 @@ static void
set_input_file (const char *name)
{
if (! STREQ (name, "-") && fd_reopen (STDIN_FILENO, name, O_RDONLY, 0) < 0)
- error (EXIT_FAILURE, errno, _("cannot open %s for reading"), quote (name));
+ error (EXIT_FAILURE, errno, _("cannot open %s for reading"),
+ quoteaf (name));
}
/* Write all lines from the beginning of the buffer up to, but
@@ -969,7 +970,7 @@ create_output_file (void)
if (! fopen_ok)
{
- error (0, fopen_errno, "%s", quote (output_filename));
+ error (0, fopen_errno, "%s", quotef (output_filename));
cleanup_fatal ();
}
bytes_written = 0;
@@ -990,7 +991,7 @@ delete_all_files (bool in_signal_handler)
{
const char *name = make_filename (i);
if (unlink (name) != 0 && !in_signal_handler)
- error (0, errno, "%s", quote (name));
+ error (0, errno, "%s", quotef (name));
}
files_created = 0;
@@ -1006,13 +1007,13 @@ close_output_file (void)
{
if (ferror (output_stream))
{
- error (0, 0, _("write error for %s"), quote (output_filename));
+ error (0, 0, _("write error for %s"), quoteaf (output_filename));
output_stream = NULL;
cleanup_fatal ();
}
if (fclose (output_stream) != 0)
{
- error (0, errno, "%s", quote (output_filename));
+ error (0, errno, "%s", quotef (output_filename));
output_stream = NULL;
cleanup_fatal ();
}
@@ -1030,7 +1031,7 @@ close_output_file (void)
sigprocmask (SIG_SETMASK, &oldset, NULL);
if (! unlink_ok)
- error (0, unlink_errno, "%s", quote (output_filename));
+ error (0, unlink_errno, "%s", quotef (output_filename));
}
else
{
diff --git a/src/cut.c b/src/cut.c
index b2087695d..d1df2f8a8 100644
--- a/src/cut.c
+++ b/src/cut.c
@@ -34,7 +34,6 @@
#include "fadvise.h"
#include "getndelim2.h"
#include "hash.h"
-#include "quote.h"
#include "xstrndup.h"
#include "set-fields.h"
@@ -445,7 +444,7 @@ cut_file (char const *file)
stream = fopen (file, "r");
if (stream == NULL)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
}
@@ -456,14 +455,14 @@ cut_file (char const *file)
if (ferror (stream))
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
if (STREQ (file, "-"))
clearerr (stream); /* Also clear EOF. */
else if (fclose (stream) == EOF)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
return true;
diff --git a/src/date.c b/src/date.c
index 50e71d74a..5c3e5da7d 100644
--- a/src/date.c
+++ b/src/date.c
@@ -290,7 +290,7 @@ batch_convert (const char *input_filename, const char *format, timezone_t tz)
in_stream = fopen (input_filename, "r");
if (in_stream == NULL)
{
- error (EXIT_FAILURE, errno, "%s", quote (input_filename));
+ error (EXIT_FAILURE, errno, "%s", quotef (input_filename));
}
}
@@ -320,7 +320,7 @@ batch_convert (const char *input_filename, const char *format, timezone_t tz)
}
if (fclose (in_stream) == EOF)
- error (EXIT_FAILURE, errno, "%s", quote (input_filename));
+ error (EXIT_FAILURE, errno, "%s", quotef (input_filename));
free (line);
@@ -520,7 +520,7 @@ main (int argc, char **argv)
if (reference != NULL)
{
if (stat (reference, &refstats) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (reference));
+ error (EXIT_FAILURE, errno, "%s", quotef (reference));
when = get_stat_mtime (&refstats);
}
else
diff --git a/src/dd.c b/src/dd.c
index a1485f609..a5557a85b 100644
--- a/src/dd.c
+++ b/src/dd.c
@@ -32,7 +32,6 @@
#include "human.h"
#include "long-options.h"
#include "quote.h"
-#include "quotearg.h"
#include "verror.h"
#include "xstrtol.h"
#include "xtime.h"
@@ -911,14 +910,14 @@ cleanup (void)
{
if (close (STDIN_FILENO) < 0)
error (EXIT_FAILURE, errno,
- _("closing input file %s"), quote (input_file));
+ _("closing input file %s"), quoteaf (input_file));
/* Don't remove this call to close, even though close_stdout
closes standard output. This close is necessary when cleanup
is called as part of a signal handler. */
if (close (STDOUT_FILENO) < 0)
error (EXIT_FAILURE, errno,
- _("closing output file %s"), quote (output_file));
+ _("closing output file %s"), quoteaf (output_file));
}
/* Process any pending signals. If signals are caught, this function
@@ -1134,7 +1133,7 @@ iwrite (int fd, char const *buf, size_t size)
if (fcntl (STDOUT_FILENO, F_SETFL, old_flags & ~O_DIRECT) != 0
&& status_level != STATUS_NONE)
error (0, errno, _("failed to turn off O_DIRECT: %s"),
- quote (output_file));
+ quotef (output_file));
/* Since we have just turned off O_DIRECT for the final write,
here we try to preserve some of its semantics. First, use
@@ -1204,7 +1203,7 @@ write_output (void)
w_bytes += nwritten;
if (nwritten != output_blocksize)
{
- error (0, errno, _("writing to %s"), quote (output_file));
+ error (0, errno, _("writing to %s"), quoteaf (output_file));
if (nwritten != 0)
w_partial++;
quit (EXIT_FAILURE);
@@ -1356,7 +1355,8 @@ scanargs (int argc, char *const *argv)
if (val == NULL)
{
- error (0, 0, _("unrecognized operand %s"), quote (name));
+ error (0, 0, _("unrecognized operand %s"),
+ quote (name));
usage (EXIT_FAILURE);
}
val++;
@@ -1416,7 +1416,8 @@ scanargs (int argc, char *const *argv)
count = n;
else
{
- error (0, 0, _("unrecognized operand %s"), quote (name));
+ error (0, 0, _("unrecognized operand %s"),
+ quote (name));
usage (EXIT_FAILURE);
}
@@ -1718,7 +1719,7 @@ skip (int fdesc, char const *file, uintmax_t records, size_t blocksize,
{
struct stat st;
if (fstat (STDIN_FILENO, &st) != 0)
- error (EXIT_FAILURE, errno, _("cannot fstat %s"), quote (file));
+ error (EXIT_FAILURE, errno, _("cannot fstat %s"), quoteaf (file));
if (usable_st_size (&st) && st.st_size < input_offset + offset)
{
/* When skipping past EOF, return the number of _full_ blocks
@@ -1765,9 +1766,9 @@ skip (int fdesc, char const *file, uintmax_t records, size_t blocksize,
}
if (fdesc == STDIN_FILENO)
- error (0, lseek_errno, _("%s: cannot skip"), quote (file));
+ error (0, lseek_errno, _("%s: cannot skip"), quotef (file));
else
- error (0, lseek_errno, _("%s: cannot seek"), quote (file));
+ error (0, lseek_errno, _("%s: cannot seek"), quotef (file));
/* If the file has a specific size and we've asked
to skip/seek beyond the max allowable, then quit. */
quit (EXIT_FAILURE);
@@ -1793,12 +1794,12 @@ skip (int fdesc, char const *file, uintmax_t records, size_t blocksize,
{
if (fdesc == STDIN_FILENO)
{
- error (0, errno, _("error reading %s"), quote (file));
+ error (0, errno, _("error reading %s"), quoteaf (file));
if (conversions_mask & C_NOERROR)
print_stats ();
}
else
- error (0, lseek_errno, _("%s: cannot seek"), quote (file));
+ error (0, lseek_errno, _("%s: cannot seek"), quotef (file));
quit (EXIT_FAILURE);
}
else if (nread == 0)
@@ -1840,7 +1841,7 @@ advance_input_after_read_error (size_t nbytes)
if (input_offset_overflow)
{
error (0, 0, _("offset overflow while reading file %s"),
- quote (input_file));
+ quoteaf (input_file));
return false;
}
offset = lseek (STDIN_FILENO, 0, SEEK_CUR);
@@ -1859,7 +1860,7 @@ advance_input_after_read_error (size_t nbytes)
}
}
- error (0, errno, _("%s: cannot seek"), quote (input_file));
+ error (0, errno, _("%s: cannot seek"), quotef (input_file));
return false;
}
@@ -1998,7 +1999,7 @@ set_fd_flags (int fd, int add_flags, char const *name)
}
if (!ok)
- error (EXIT_FAILURE, errno, _("setting flags for %s"), quote (name));
+ error (EXIT_FAILURE, errno, _("setting flags for %s"), quoteaf (name));
}
}
@@ -2052,7 +2053,7 @@ dd_copy (void)
&& status_level != STATUS_NONE)
{
error (0, 0,
- _("%s: cannot skip to specified offset"), quote (input_file));
+ _("%s: cannot skip to specified offset"), quotef (input_file));
}
}
@@ -2071,7 +2072,7 @@ dd_copy (void)
size_t size = write_records ? output_blocksize : bytes;
if (iwrite (STDOUT_FILENO, obuf, size) != size)
{
- error (0, errno, _("writing to %s"), quote (output_file));
+ error (0, errno, _("writing to %s"), quoteaf (output_file));
quit (EXIT_FAILURE);
}
@@ -2130,7 +2131,7 @@ dd_copy (void)
if (nread < 0)
{
if (!(conversions_mask & C_NOERROR) || status_level != STATUS_NONE)
- error (0, errno, _("error reading %s"), quote (input_file));
+ error (0, errno, _("error reading %s"), quoteaf (input_file));
if (conversions_mask & C_NOERROR)
{
@@ -2194,7 +2195,7 @@ dd_copy (void)
w_bytes += nwritten;
if (nwritten != n_bytes_read)
{
- error (0, errno, _("error writing %s"), quote (output_file));
+ error (0, errno, _("error writing %s"), quoteaf (output_file));
return EXIT_FAILURE;
}
else if (n_bytes_read == input_blocksize)
@@ -2257,7 +2258,7 @@ dd_copy (void)
w_partial++;
if (nwritten != oc)
{
- error (0, errno, _("error writing %s"), quote (output_file));
+ error (0, errno, _("error writing %s"), quoteaf (output_file));
return EXIT_FAILURE;
}
}
@@ -2269,7 +2270,7 @@ dd_copy (void)
struct stat stdout_stat;
if (fstat (STDOUT_FILENO, &stdout_stat) != 0)
{
- error (0, errno, _("cannot fstat %s"), quote (output_file));
+ error (0, errno, _("cannot fstat %s"), quoteaf (output_file));
return EXIT_FAILURE;
}
if (S_ISREG (stdout_stat.st_mode) || S_TYPEISSHM (&stdout_stat))
@@ -2282,7 +2283,7 @@ dd_copy (void)
error (0, errno,
_("failed to truncate to %" PRIdMAX " bytes"
" in output file %s"),
- (intmax_t) output_offset, quote (output_file));
+ (intmax_t) output_offset, quoteaf (output_file));
return EXIT_FAILURE;
}
}
@@ -2293,7 +2294,7 @@ dd_copy (void)
{
if (errno != ENOSYS && errno != EINVAL)
{
- error (0, errno, _("fdatasync failed for %s"), quote (output_file));
+ error (0, errno, _("fdatasync failed for %s"), quoteaf (output_file));
exit_status = EXIT_FAILURE;
}
conversions_mask |= C_FSYNC;
@@ -2303,7 +2304,7 @@ dd_copy (void)
while (fsync (STDOUT_FILENO) != 0)
if (errno != EINTR)
{
- error (0, errno, _("fsync failed for %s"), quote (output_file));
+ error (0, errno, _("fsync failed for %s"), quoteaf (output_file));
return EXIT_FAILURE;
}
@@ -2354,7 +2355,8 @@ main (int argc, char **argv)
else
{
if (ifd_reopen (STDIN_FILENO, input_file, O_RDONLY | input_flags, 0) < 0)
- error (EXIT_FAILURE, errno, _("failed to open %s"), quote (input_file));
+ error (EXIT_FAILURE, errno, _("failed to open %s"),
+ quoteaf (input_file));
}
offset = lseek (STDIN_FILENO, 0, SEEK_CUR);
@@ -2384,7 +2386,7 @@ main (int argc, char **argv)
&& (ifd_reopen (STDOUT_FILENO, output_file, O_WRONLY | opts, perms)
< 0))
error (EXIT_FAILURE, errno, _("failed to open %s"),
- quote (output_file));
+ quoteaf (output_file));
if (seek_records != 0 && !(conversions_mask & C_NOTRUNC))
{
@@ -2409,14 +2411,14 @@ main (int argc, char **argv)
struct stat stdout_stat;
if (fstat (STDOUT_FILENO, &stdout_stat) != 0)
error (EXIT_FAILURE, errno, _("cannot fstat %s"),
- quote (output_file));
+ quoteaf (output_file));
if (S_ISREG (stdout_stat.st_mode)
|| S_ISDIR (stdout_stat.st_mode)
|| S_TYPEISSHM (&stdout_stat))
error (EXIT_FAILURE, ftruncate_errno,
_("failed to truncate to %"PRIuMAX" bytes"
" in output file %s"),
- size, quote (output_file));
+ size, quoteaf (output_file));
}
}
}
@@ -2431,13 +2433,13 @@ main (int argc, char **argv)
if (i_nocache && !invalidate_cache (STDIN_FILENO, 0))
{
error (0, errno, _("failed to discard cache for: %s"),
- quote (input_file));
+ quotef (input_file));
exit_status = EXIT_FAILURE;
}
if (o_nocache && !invalidate_cache (STDOUT_FILENO, 0))
{
error (0, errno, _("failed to discard cache for: %s"),
- quote (output_file));
+ quotef (output_file));
exit_status = EXIT_FAILURE;
}
}
diff --git a/src/df.c b/src/df.c
index 507a0f734..250a570b4 100644
--- a/src/df.c
+++ b/src/df.c
@@ -938,7 +938,7 @@ get_dev (char const *disk, char const *mount_point, char const* file,
}
else
{
- error (0, errno, "%s", quote (stat_file));
+ error (0, errno, "%s", quotef (stat_file));
exit_status = EXIT_FAILURE;
return;
}
@@ -1240,7 +1240,7 @@ get_disk (char const *disk)
else if (eclipsed_device)
{
error (0, 0, _("cannot access %s: over-mounted by another device"),
- quote (file));
+ quoteaf (file));
exit_status = EXIT_FAILURE;
return true;
}
@@ -1304,7 +1304,7 @@ get_point (const char *point, const struct stat *statp)
can't possibly be on this file system. */
if (errno == EIO)
{
- error (0, errno, "%s", quote (me->me_mountdir));
+ error (0, errno, "%s", quotef (me->me_mountdir));
exit_status = EXIT_FAILURE;
}
@@ -1668,7 +1668,7 @@ main (int argc, char **argv)
if ((fd < 0 || fstat (fd, &stats[i - optind]))
&& stat (argv[i], &stats[i - optind]))
{
- error (0, errno, "%s", quote (argv[i]));
+ error (0, errno, "%s", quotef (argv[i]));
exit_status = EXIT_FAILURE;
argv[i] = NULL;
}
diff --git a/src/dircolors.c b/src/dircolors.c
index f93b997a6..908835eb3 100644
--- a/src/dircolors.c
+++ b/src/dircolors.c
@@ -285,7 +285,7 @@ dc_parse_stream (FILE *fp, const char *filename)
if (arg == NULL)
{
error (0, 0, _("%s:%lu: invalid line; missing second token"),
- quote (filename), (unsigned long int) line_number);
+ quotef (filename), (unsigned long int) line_number);
ok = false;
free (keywd);
continue;
@@ -357,7 +357,7 @@ dc_parse_stream (FILE *fp, const char *filename)
if (unrecognized && (state == ST_TERMSURE || state == ST_TERMYES))
{
error (0, 0, _("%s:%lu: unrecognized keyword %s"),
- (filename ? quote (filename) : _("<internal>")),
+ (filename ? quotef (filename) : _("<internal>")),
(unsigned long int) line_number, keywd);
ok = false;
}
@@ -376,7 +376,7 @@ dc_parse_file (const char *filename)
if (! STREQ (filename, "-") && freopen (filename, "r", stdin) == NULL)
{
- error (0, errno, "%s", quote (filename));
+ error (0, errno, "%s", quotef (filename));
return false;
}
@@ -384,7 +384,7 @@ dc_parse_file (const char *filename)
if (fclose (stdin) != 0)
{
- error (0, errno, "%s", quote (filename));
+ error (0, errno, "%s", quotef (filename));
return false;
}
diff --git a/src/du.c b/src/du.c
index af6af04f2..19f85a83a 100644
--- a/src/du.c
+++ b/src/du.c
@@ -506,7 +506,7 @@ process_file (FTS *fts, FTSENT *ent)
if (info == FTS_DNR)
{
/* An error occurred, but the size is known, so count it. */
- error (0, ent->fts_errno, _("cannot read directory %s"), quote (file));
+ error (0, ent->fts_errno, _("cannot read directory %s"), quoteaf (file));
ok = false;
}
else if (info != FTS_DP)
@@ -526,7 +526,7 @@ process_file (FTS *fts, FTSENT *ent)
if (info == FTS_NS || info == FTS_SLNONE)
{
- error (0, ent->fts_errno, _("cannot access %s"), quote (file));
+ error (0, ent->fts_errno, _("cannot access %s"), quoteaf (file));
return false;
}
@@ -566,7 +566,7 @@ process_file (FTS *fts, FTSENT *ent)
case FTS_ERR:
/* An error occurred, but the size is known, so count it. */
- error (0, ent->fts_errno, "%s", quote (file));
+ error (0, ent->fts_errno, "%s", quotef (file));
ok = false;
break;
@@ -691,7 +691,7 @@ du_files (char **files, int bit_flags)
if (errno != 0)
{
error (0, errno, _("fts_read failed: %s"),
- quote (fts->fts_path));
+ quotef (fts->fts_path));
ok = false;
}
@@ -882,7 +882,7 @@ main (int argc, char **argv)
if (add_exclude_file (add_exclude, exclude, optarg,
EXCLUDE_WILDCARDS, '\n'))
{
- error (0, errno, "%s", quote (optarg));
+ error (0, errno, "%s", quotef (optarg));
ok = false;
}
break;
@@ -1020,7 +1020,7 @@ main (int argc, char **argv)
if (! (STREQ (files_from, "-") || freopen (files_from, "r", stdin)))
error (EXIT_FAILURE, errno, _("cannot open %s for reading"),
- quote (files_from));
+ quoteaf (files_from));
ai = argv_iter_init_stream (stdin);
@@ -1068,7 +1068,7 @@ main (int argc, char **argv)
goto argv_iter_done;
case AI_ERR_READ:
error (0, errno, _("%s: read error"),
- quote (files_from));
+ quotef (files_from));
ok = false;
goto argv_iter_done;
case AI_ERR_MEM:
@@ -1083,7 +1083,7 @@ main (int argc, char **argv)
printf - | du --files0-from=- */
error (0, 0, _("when reading file names from stdin, "
"no file name of %s allowed"),
- quote (file_name));
+ quoteaf (file_name));
skip_file = true;
}
@@ -1105,7 +1105,7 @@ main (int argc, char **argv)
not totally appropriate, since NUL is the separator, not NL,
but it might be better than nothing. */
unsigned long int file_number = argv_iter_n_args (ai);
- error (0, 0, "%s:%lu: %s", quote (files_from),
+ error (0, 0, "%s:%lu: %s", quotef (files_from),
file_number, _("invalid zero-length file name"));
}
skip_file = true;
@@ -1127,7 +1127,7 @@ main (int argc, char **argv)
di_set_free (di_mnt);
if (files_from && (ferror (stdin) || fclose (stdin) != 0) && ok)
- error (EXIT_FAILURE, 0, _("error reading %s"), quote (files_from));
+ error (EXIT_FAILURE, 0, _("error reading %s"), quoteaf (files_from));
if (print_grand_total)
print_size (&tot_dui, _("total"));
diff --git a/src/expand.c b/src/expand.c
index 843bb87be..563a9e956 100644
--- a/src/expand.c
+++ b/src/expand.c
@@ -224,14 +224,14 @@ next_file (FILE *fp)
{
if (ferror (fp))
{
- error (0, errno, "%s", quote (prev_file));
+ error (0, errno, "%s", quotef (prev_file));
exit_status = EXIT_FAILURE;
}
if (STREQ (prev_file, "-"))
clearerr (fp); /* Also clear EOF. */
else if (fclose (fp) != 0)
{
- error (0, errno, "%s", quote (prev_file));
+ error (0, errno, "%s", quotef (prev_file));
exit_status = EXIT_FAILURE;
}
}
@@ -251,7 +251,7 @@ next_file (FILE *fp)
fadvise (fp, FADVISE_SEQUENTIAL);
return fp;
}
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
exit_status = EXIT_FAILURE;
}
return NULL;
diff --git a/src/expr.c b/src/expr.c
index 536e68131..59332b184 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -36,7 +36,6 @@
#include <regex.h>
#include "error.h"
#include "long-options.h"
-#include "quotearg.h"
#include "strnumcmp.h"
#include "xstrtol.h"
diff --git a/src/find-mount-point.c b/src/find-mount-point.c
index 59a60e271..586bd2f33 100644
--- a/src/find-mount-point.c
+++ b/src/find-mount-point.c
@@ -19,7 +19,6 @@
#include "system.h"
#include "error.h"
-#include "quote.h"
#include "save-cwd.h"
#include "xgetcwd.h"
#include "find-mount-point.h"
@@ -47,7 +46,7 @@ find_mount_point (char const *file, struct stat const *file_stat)
last_stat = *file_stat;
if (chdir (file) < 0)
{
- error (0, errno, _("cannot change to directory %s"), quote (file));
+ error (0, errno, _("cannot change to directory %s"), quoteaf (file));
return NULL;
}
}
@@ -61,14 +60,14 @@ find_mount_point (char const *file, struct stat const *file_stat)
if (chdir (dir) < 0)
{
- error (0, errno, _("cannot change to directory %s"), quote (dir));
+ error (0, errno, _("cannot change to directory %s"), quoteaf (dir));
return NULL;
}
if (stat (".", &last_stat) < 0)
{
error (0, errno, _("cannot stat current directory (now %s)"),
- quote (dir));
+ quoteaf (dir));
goto done;
}
}
@@ -81,7 +80,7 @@ find_mount_point (char const *file, struct stat const *file_stat)
struct stat st;
if (stat ("..", &st) < 0)
{
- error (0, errno, _("cannot stat %s"), quote (".."));
+ error (0, errno, _("cannot stat %s"), quoteaf (".."));
goto done;
}
if (st.st_dev != last_stat.st_dev || st.st_ino == last_stat.st_ino)
@@ -89,7 +88,7 @@ find_mount_point (char const *file, struct stat const *file_stat)
break;
if (chdir ("..") < 0)
{
- error (0, errno, _("cannot change to directory %s"), quote (".."));
+ error (0, errno, _("cannot change to directory %s"), quoteaf (".."));
goto done;
}
last_stat = st;
diff --git a/src/fmt.c b/src/fmt.c
index f37f7cd88..46a8bce4b 100644
--- a/src/fmt.c
+++ b/src/fmt.c
@@ -29,7 +29,6 @@
#include "system.h"
#include "error.h"
#include "fadvise.h"
-#include "quote.h"
#include "xdectoint.h"
/* The official name of this program (e.g., no 'g' prefix). */
@@ -431,14 +430,14 @@ main (int argc, char **argv)
fmt (in_stream);
if (fclose (in_stream) == EOF)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
ok = false;
}
}
else
{
error (0, errno, _("cannot open %s for reading"),
- quote (file));
+ quoteaf (file));
ok = false;
}
}
diff --git a/src/fold.c b/src/fold.c
index 2f917f400..4a445d50b 100644
--- a/src/fold.c
+++ b/src/fold.c
@@ -25,7 +25,6 @@
#include "system.h"
#include "error.h"
#include "fadvise.h"
-#include "quote.h"
#include "xdectoint.h"
#define TAB_WIDTH 8
@@ -137,7 +136,7 @@ fold_file (char const *filename, size_t width)
if (istream == NULL)
{
- error (0, errno, "%s", quote (filename));
+ error (0, errno, "%s", quotef (filename));
return false;
}
@@ -222,14 +221,14 @@ fold_file (char const *filename, size_t width)
if (ferror (istream))
{
- error (0, saved_errno, "%s", quote (filename));
+ error (0, saved_errno, "%s", quotef (filename));
if (!STREQ (filename, "-"))
fclose (istream);
return false;
}
if (!STREQ (filename, "-") && fclose (istream) == EOF)
{
- error (0, errno, "%s", quote (filename));
+ error (0, errno, "%s", quotef (filename));
return false;
}
diff --git a/src/head.c b/src/head.c
index a77376d10..e05c21935 100644
--- a/src/head.c
+++ b/src/head.c
@@ -145,10 +145,10 @@ diagnose_copy_fd_failure (enum Copy_fd_status err, char const *filename)
switch (err)
{
case COPY_FD_READ_ERROR:
- error (0, errno, _("error reading %s"), quote (filename));
+ error (0, errno, _("error reading %s"), quoteaf (filename));
break;
case COPY_FD_UNEXPECTED_EOF:
- error (0, errno, _("%s: file has shrunk too much"), quote (filename));
+ error (0, errno, _("%s: file has shrunk too much"), quotef (filename));
break;
default:
abort ();
@@ -174,7 +174,7 @@ xwrite_stdout (char const *buffer, size_t n_bytes)
{
clearerr (stdout); /* To avoid redundant close_stdout diagnostic. */
error (EXIT_FAILURE, errno, _("error writing %s"),
- quote ("standard output"));
+ quoteaf ("standard output"));
}
}
@@ -222,7 +222,7 @@ elseek (int fd, off_t offset, int whence, char const *filename)
_(whence == SEEK_SET
? N_("%s: cannot seek to offset %s")
: N_("%s: cannot seek to relative offset %s")),
- quote (filename),
+ quotef (filename),
offtostr (offset, buf));
return new_offset;
@@ -296,7 +296,7 @@ elide_tail_bytes_pipe (const char *filename, int fd, uintmax_t n_elide_0,
{
if (errno != 0)
{
- error (0, errno, _("error reading %s"), quote (filename));
+ error (0, errno, _("error reading %s"), quoteaf (filename));
ok = false;
break;
}
@@ -378,7 +378,7 @@ elide_tail_bytes_pipe (const char *filename, int fd, uintmax_t n_elide_0,
{
if (errno != 0)
{
- error (0, errno, _("error reading %s"), quote (filename));
+ error (0, errno, _("error reading %s"), quoteaf (filename));
ok = false;
goto free_mem;
}
@@ -574,7 +574,7 @@ elide_tail_lines_pipe (const char *filename, int fd, uintmax_t n_elide,
if (n_read == SAFE_READ_ERROR)
{
- error (0, errno, _("error reading %s"), quote (filename));
+ error (0, errno, _("error reading %s"), quoteaf (filename));
ok = false;
goto free_lbuffers;
}
@@ -656,7 +656,7 @@ elide_tail_lines_seekable (const char *pretty_filename, int fd,
bytes_read = safe_read (fd, buffer, bytes_read);
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, _("error reading %s"), quote (pretty_filename));
+ error (0, errno, _("error reading %s"), quoteaf (pretty_filename));
return false;
}
@@ -725,7 +725,7 @@ elide_tail_lines_seekable (const char *pretty_filename, int fd,
bytes_read = safe_read (fd, buffer, BUFSIZ);
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, _("error reading %s"), quote (pretty_filename));
+ error (0, errno, _("error reading %s"), quoteaf (pretty_filename));
return false;
}
@@ -775,7 +775,7 @@ head_bytes (const char *filename, int fd, uintmax_t bytes_to_write)
bytes_read = safe_read (fd, buffer, bytes_to_read);
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, _("error reading %s"), quote (filename));
+ error (0, errno, _("error reading %s"), quoteaf (filename));
return false;
}
if (bytes_read == 0)
@@ -798,7 +798,7 @@ head_lines (const char *filename, int fd, uintmax_t lines_to_write)
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, _("error reading %s"), quote (filename));
+ error (0, errno, _("error reading %s"), quoteaf (filename));
return false;
}
if (bytes_read == 0)
@@ -837,7 +837,7 @@ head (const char *filename, int fd, uintmax_t n_units, bool count_lines,
if (fstat (fd, &st) != 0)
{
error (0, errno, _("cannot fstat %s"),
- quote (filename));
+ quoteaf (filename));
return false;
}
if (! presume_input_pipe && usable_st_size (&st))
@@ -878,7 +878,7 @@ head_file (const char *filename, uintmax_t n_units, bool count_lines,
fd = open (filename, O_RDONLY | O_BINARY);
if (fd < 0)
{
- error (0, errno, _("cannot open %s for reading"), quote (filename));
+ error (0, errno, _("cannot open %s for reading"), quoteaf (filename));
return false;
}
}
@@ -886,7 +886,7 @@ head_file (const char *filename, uintmax_t n_units, bool count_lines,
ok = head (filename, fd, n_units, count_lines, elide_from_end);
if (!is_stdin && close (fd) != 0)
{
- error (0, errno, _("failed to close %s"), quote (filename));
+ error (0, errno, _("failed to close %s"), quoteaf (filename));
return false;
}
return ok;
diff --git a/src/hostname.c b/src/hostname.c
index 371a2e1d9..bc421d144 100644
--- a/src/hostname.c
+++ b/src/hostname.c
@@ -91,7 +91,8 @@ main (int argc, char **argv)
/* Set hostname to operand. */
char const *name = argv[optind];
if (sethostname (name, strlen (name)) != 0)
- error (EXIT_FAILURE, errno, _("cannot set name to %s"), quote (name));
+ error (EXIT_FAILURE, errno, _("cannot set name to %s"),
+ quote (name));
#else
error (EXIT_FAILURE, 0,
_("cannot set hostname; this system lacks the functionality"));
diff --git a/src/install.c b/src/install.c
index d338cbb29..66e2ea53d 100644
--- a/src/install.c
+++ b/src/install.c
@@ -373,7 +373,7 @@ setdefaultfilecon (char const *file)
if (lsetfilecon (file, scontext) < 0 && errno != ENOTSUP)
error (0, errno,
_("warning: %s: failed to change context to %s"),
- quote_n (0, file), quote_n (1, scontext));
+ quotef_n (0, file), quote_n (1, scontext));
freecon (scontext);
return;
@@ -401,9 +401,10 @@ target_directory_operand (char const *file)
int err = (stat (file, &st) == 0 ? 0 : errno);
bool is_a_dir = !err && S_ISDIR (st.st_mode);
if (err && err != ENOENT)
- error (EXIT_FAILURE, err, _("failed to access %s"), quote (file));
+ error (EXIT_FAILURE, err, _("failed to access %s"), quoteaf (file));
if (is_a_dir < looks_like_a_dir)
- error (EXIT_FAILURE, err, _("target %s is not a directory"), quote (file));
+ error (EXIT_FAILURE, err, _("target %s is not a directory"),
+ quoteaf (file));
return is_a_dir;
}
@@ -413,7 +414,7 @@ announce_mkdir (char const *dir, void *options)
{
struct cp_options const *x = options;
if (x->verbose)
- prog_fprintf (stdout, _("creating directory %s"), quote (dir));
+ prog_fprintf (stdout, _("creating directory %s"), quoteaf (dir));
}
/* Make ancestor directory DIR, whose last file name component is
@@ -481,9 +482,9 @@ change_attributes (char const *name)
if (! (owner_id == (uid_t) -1 && group_id == (gid_t) -1)
&& lchown (name, owner_id, group_id) != 0)
- error (0, errno, _("cannot change ownership of %s"), quote (name));
+ error (0, errno, _("cannot change ownership of %s"), quoteaf (name));
else if (chmod (name, mode) != 0)
- error (0, errno, _("cannot change permissions of %s"), quote (name));
+ error (0, errno, _("cannot change permissions of %s"), quoteaf (name));
else
ok = true;
@@ -505,7 +506,7 @@ change_timestamps (struct stat const *src_sb, char const *dest)
if (utimens (dest, timespec))
{
- error (0, errno, _("cannot set time stamps for %s"), quote (dest));
+ error (0, errno, _("cannot set time stamps for %s"), quoteaf (dest));
return false;
}
return true;
@@ -531,7 +532,7 @@ strip (char const *name)
break;
case 0: /* Child. */
execlp (strip_program, strip_program, name, NULL);
- error (EXIT_FAILURE, errno, _("cannot run %s"), quote (strip_program));
+ error (EXIT_FAILURE, errno, _("cannot run %s"), quoteaf (strip_program));
break;
default: /* Parent. */
if (waitpid (pid, &status, 0) < 0)
@@ -561,7 +562,8 @@ get_ids (void)
unsigned long int tmp;
if (xstrtoul (owner_name, NULL, 0, &tmp, NULL) != LONGINT_OK
|| UID_T_MAX < tmp)
- error (EXIT_FAILURE, 0, _("invalid user %s"), quote (owner_name));
+ error (EXIT_FAILURE, 0, _("invalid user %s"),
+ quote (owner_name));
owner_id = tmp;
}
else
@@ -579,7 +581,8 @@ get_ids (void)
unsigned long int tmp;
if (xstrtoul (group_name, NULL, 0, &tmp, NULL) != LONGINT_OK
|| GID_T_MAX < tmp)
- error (EXIT_FAILURE, 0, _("invalid group %s"), quote (group_name));
+ error (EXIT_FAILURE, 0, _("invalid group %s"),
+ quote (group_name));
group_id = tmp;
}
else
@@ -683,7 +686,7 @@ install_file_in_file (const char *from, const char *to,
struct stat from_sb;
if (x->preserve_timestamps && stat (from, &from_sb) != 0)
{
- error (0, errno, _("cannot stat %s"), quote (from));
+ error (0, errno, _("cannot stat %s"), quoteaf (from));
return false;
}
if (! copy_file (from, to, x))
@@ -692,7 +695,7 @@ install_file_in_file (const char *from, const char *to,
if (! strip (to))
{
if (unlink (to) != 0) /* Cleanup. */
- error (EXIT_FAILURE, errno, _("cannot unlink %s"), quote (to));
+ error (EXIT_FAILURE, errno, _("cannot unlink %s"), quoteaf (to));
return false;
}
if (x->preserve_timestamps && (strip_files || ! S_ISREG (from_sb.st_mode))
@@ -718,7 +721,7 @@ mkancesdirs_safe_wd (char const *from, char *to, struct cp_options *x)
if (mkancesdirs (to, &wd, make_ancestor, x) == -1)
{
- error (0, errno, _("cannot create directory %s"), quote (to));
+ error (0, errno, _("cannot create directory %s"), quoteaf (to));
status = EXIT_FAILURE;
}
@@ -731,7 +734,8 @@ mkancesdirs_safe_wd (char const *from, char *to, struct cp_options *x)
return false;
if (restore_result < 0 && status == EXIT_SUCCESS)
{
- error (0, restore_errno, _("cannot create directory %s"), quote (to));
+ error (0, restore_errno, _("cannot create directory %s"),
+ quoteaf (to));
return false;
}
}
@@ -924,10 +928,10 @@ main (int argc, char **argv)
bool stat_success = stat (target_directory, &st) == 0 ? true : false;
if (! mkdir_and_install && ! stat_success)
error (EXIT_FAILURE, errno, _("failed to access %s"),
- quote (target_directory));
+ quoteaf (target_directory));
if (stat_success && ! S_ISDIR (st.st_mode))
error (EXIT_FAILURE, 0, _("target %s is not a directory"),
- quote (target_directory));
+ quoteaf (target_directory));
}
if (backup_suffix_string)
@@ -956,7 +960,7 @@ main (int argc, char **argv)
error (0, 0, _("missing file operand"));
else
error (0, 0, _("missing destination file operand after %s"),
- quote (file[0]));
+ quoteaf (file[0]));
usage (EXIT_FAILURE);
}
@@ -968,7 +972,7 @@ main (int argc, char **argv)
"and --no-target-directory (-T)"));
if (2 < n_files)
{
- error (0, 0, _("extra operand %s"), quote (file[2]));
+ error (0, 0, _("extra operand %s"), quoteaf (file[2]));
usage (EXIT_FAILURE);
}
}
@@ -978,7 +982,7 @@ main (int argc, char **argv)
target_directory = file[--n_files];
else if (2 < n_files)
error (EXIT_FAILURE, 0, _("target %s is not a directory"),
- quote (file[n_files - 1]));
+ quoteaf (file[n_files - 1]));
}
if (specified_mode)
diff --git a/src/join.c b/src/join.c
index ffef70f77..08af0156a 100644
--- a/src/join.c
+++ b/src/join.c
@@ -971,7 +971,7 @@ add_file_name (char *name, char *names[2],
switch (operand_status[op0])
{
case MUST_BE_OPERAND:
- error (0, 0, _("extra operand %s"), quote (name));
+ error (0, 0, _("extra operand %s"), quoteaf (name));
usage (EXIT_FAILURE);
case MIGHT_BE_J1_ARG:
@@ -1183,18 +1183,18 @@ main (int argc, char **argv)
fp1 = STREQ (g_names[0], "-") ? stdin : fopen (g_names[0], "r");
if (!fp1)
- error (EXIT_FAILURE, errno, "%s", quote (g_names[0]));
+ error (EXIT_FAILURE, errno, "%s", quotef (g_names[0]));
fp2 = STREQ (g_names[1], "-") ? stdin : fopen (g_names[1], "r");
if (!fp2)
- error (EXIT_FAILURE, errno, "%s", quote (g_names[1]));
+ error (EXIT_FAILURE, errno, "%s", quotef (g_names[1]));
if (fp1 == fp2)
error (EXIT_FAILURE, errno, _("both files cannot be standard input"));
join (fp1, fp2);
if (fclose (fp1) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (g_names[0]));
+ error (EXIT_FAILURE, errno, "%s", quotef (g_names[0]));
if (fclose (fp2) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (g_names[1]));
+ error (EXIT_FAILURE, errno, "%s", quotef (g_names[1]));
if (issued_disorder_warning[0] || issued_disorder_warning[1])
return EXIT_FAILURE;
diff --git a/src/link.c b/src/link.c
index bbd182920..bee03feb5 100644
--- a/src/link.c
+++ b/src/link.c
@@ -88,7 +88,7 @@ main (int argc, char **argv)
if (link (argv[optind], argv[optind + 1]) != 0)
error (EXIT_FAILURE, errno, _("cannot create link %s to %s"),
- quote_n (0, argv[optind + 1]), quote_n (1, argv[optind]));
+ quoteaf_n (0, argv[optind + 1]), quoteaf_n (1, argv[optind]));
return EXIT_SUCCESS;
}
diff --git a/src/ln.c b/src/ln.c
index 652103b15..974a9f0e4 100644
--- a/src/ln.c
+++ b/src/ln.c
@@ -28,7 +28,6 @@
#include "file-set.h"
#include "hash.h"
#include "hash-triple.h"
-#include "quote.h"
#include "relpath.h"
#include "same.h"
#include "yesno.h"
@@ -130,9 +129,10 @@ target_directory_operand (char const *file)
int err = (stat_result == 0 ? 0 : errno);
bool is_a_dir = !err && S_ISDIR (st.st_mode);
if (err && ! errno_nonexisting (errno))
- error (EXIT_FAILURE, err, _("failed to access %s"), quote (file));
+ error (EXIT_FAILURE, err, _("failed to access %s"), quoteaf (file));
if (is_a_dir < looks_like_a_dir)
- error (EXIT_FAILURE, err, _("target %s is not a directory"), quote (file));
+ error (EXIT_FAILURE, err, _("target %s is not a directory"),
+ quoteaf (file));
return is_a_dir;
}
@@ -194,7 +194,7 @@ do_link (const char *source, const char *dest)
: lstat (source, &source_stats))
!= 0)
{
- error (0, errno, _("failed to access %s"), quote (source));
+ error (0, errno, _("failed to access %s"), quoteaf (source));
return false;
}
@@ -204,7 +204,7 @@ do_link (const char *source, const char *dest)
if (! hard_dir_link)
{
error (0, 0, _("%s: hard link not allowed for directory"),
- quote (source));
+ quotef (source));
return false;
}
}
@@ -215,7 +215,7 @@ do_link (const char *source, const char *dest)
dest_lstat_ok = (lstat (dest, &dest_stats) == 0);
if (!dest_lstat_ok && errno != ENOENT)
{
- error (0, errno, _("failed to access %s"), quote (dest));
+ error (0, errno, _("failed to access %s"), quoteaf (dest));
return false;
}
}
@@ -228,7 +228,7 @@ do_link (const char *source, const char *dest)
{
error (0, 0,
_("will not overwrite just-created %s with %s"),
- quote_n (0, dest), quote_n (1, source));
+ quoteaf_n (0, dest), quoteaf_n (1, source));
return false;
}
@@ -260,7 +260,7 @@ do_link (const char *source, const char *dest)
&& (source_stats.st_nlink == 1 || same_name (source, dest)))
{
error (0, 0, _("%s and %s are the same file"),
- quote_n (0, source), quote_n (1, dest));
+ quoteaf_n (0, source), quoteaf_n (1, dest));
return false;
}
@@ -268,12 +268,12 @@ do_link (const char *source, const char *dest)
{
if (S_ISDIR (dest_stats.st_mode))
{
- error (0, 0, _("%s: cannot overwrite directory"), quote (dest));
+ error (0, 0, _("%s: cannot overwrite directory"), quotef (dest));
return false;
}
if (interactive)
{
- fprintf (stderr, _("%s: replace %s? "), program_name, quote (dest));
+ fprintf (stderr, _("%s: replace %s? "), program_name, quoteaf (dest));
if (!yesno ())
return true;
remove_existing_files = true;
@@ -289,7 +289,8 @@ do_link (const char *source, const char *dest)
dest_backup = NULL;
if (rename_errno != ENOENT)
{
- error (0, rename_errno, _("cannot backup %s"), quote (dest));
+ error (0, rename_errno, _("cannot backup %s"),
+ quoteaf (dest));
return false;
}
}
@@ -327,7 +328,7 @@ do_link (const char *source, const char *dest)
{
if (unlink (dest) != 0)
{
- error (0, errno, _("cannot remove %s"), quote (dest));
+ error (0, errno, _("cannot remove %s"), quoteaf (dest));
free (dest_backup);
free (rel_source);
return false;
@@ -349,9 +350,9 @@ do_link (const char *source, const char *dest)
if (verbose)
{
if (dest_backup)
- printf ("%s ~ ", quote (dest_backup));
- printf ("%s %c> %s\n", quote_n (0, dest), (symbolic_link ? '-' : '='),
- quote_n (1, source));
+ printf ("%s ~ ", quoteaf (dest_backup));
+ printf ("%s %c> %s\n", quoteaf_n (0, dest),
+ (symbolic_link ? '-' : '='), quoteaf_n (1, source));
}
}
else
@@ -367,12 +368,12 @@ do_link (const char *source, const char *dest)
|| errno == EROFS)
? _("failed to create hard link %s")
: _("failed to create hard link %s => %s"))),
- quote_n (0, dest), quote_n (1, source));
+ quoteaf_n (0, dest), quoteaf_n (1, source));
if (dest_backup)
{
if (rename (dest_backup, dest) != 0)
- error (0, errno, _("cannot un-backup %s"), quote (dest));
+ error (0, errno, _("cannot un-backup %s"), quoteaf (dest));
}
}
@@ -530,10 +531,10 @@ main (int argc, char **argv)
struct stat st;
if (stat (optarg, &st) != 0)
error (EXIT_FAILURE, errno, _("failed to access %s"),
- quote (optarg));
+ quoteaf (optarg));
if (! S_ISDIR (st.st_mode))
error (EXIT_FAILURE, 0, _("target %s is not a directory"),
- quote (optarg));
+ quoteaf (optarg));
}
target_directory = optarg;
break;
@@ -575,9 +576,9 @@ main (int argc, char **argv)
if (n_files < 2)
error (0, 0,
_("missing destination file operand after %s"),
- quote (file[0]));
+ quoteaf (file[0]));
else
- error (0, 0, _("extra operand %s"), quote (file[2]));
+ error (0, 0, _("extra operand %s"), quoteaf (file[2]));
usage (EXIT_FAILURE);
}
}
@@ -589,7 +590,7 @@ main (int argc, char **argv)
target_directory = file[--n_files];
else if (2 < n_files)
error (EXIT_FAILURE, 0, _("target %s is not a directory"),
- quote (file[n_files - 1]));
+ quoteaf (file[n_files - 1]));
}
if (backup_suffix_string)
diff --git a/src/ls.c b/src/ls.c
index ef708dfa3..95a2ed8ec 100644
--- a/src/ls.c
+++ b/src/ls.c
@@ -100,7 +100,6 @@
#include "mpsort.h"
#include "obstack.h"
#include "quote.h"
-#include "quotearg.h"
#include "smack.h"
#include "stat-size.h"
#include "stat-time.h"
@@ -2534,7 +2533,7 @@ set_exit_status (bool serious)
static void
file_failure (bool serious, char const *message, char const *file)
{
- error (0, errno, message, quote (file));
+ error (0, errno, message, quoteaf (file));
set_exit_status (serious);
}
@@ -2601,7 +2600,7 @@ print_dir (char const *name, char const *realname, bool command_line_arg)
if (visit_dir (dir_stat.st_dev, dir_stat.st_ino))
{
error (0, 0, _("%s: not listing already-listed directory"),
- quote (name));
+ quotef (name));
closedir (dirp);
set_exit_status (true);
return;
@@ -3109,7 +3108,7 @@ gobble_file (char const *name, enum filetype type, ino_t inode,
any_has_acl |= f->acl_type != ACL_T_NONE;
if (err)
- error (0, errno, "%s", quote (absolute_name));
+ error (0, errno, "%s", quotef (absolute_name));
}
if (S_ISLNK (f->stat.st_mode)
diff --git a/src/md5sum.c b/src/md5sum.c
index 16163cc9e..5d4b958ee 100644
--- a/src/md5sum.c
+++ b/src/md5sum.c
@@ -37,7 +37,6 @@
#endif
#include "error.h"
#include "fadvise.h"
-#include "quote.h"
#include "stdio--.h"
#include "xfreopen.h"
@@ -483,7 +482,7 @@ digest_file (const char *filename, int *binary, unsigned char *bin_result)
fp = fopen (filename, (O_BINARY && *binary ? "rb" : "r"));
if (fp == NULL)
{
- error (0, errno, "%s", quote (filename));
+ error (0, errno, "%s", quotef (filename));
return false;
}
}
@@ -493,7 +492,7 @@ digest_file (const char *filename, int *binary, unsigned char *bin_result)
err = DIGEST_STREAM (fp, bin_result);
if (err)
{
- error (0, errno, "%s", quote (filename));
+ error (0, errno, "%s", quotef (filename));
if (fp != stdin)
fclose (fp);
return false;
@@ -501,7 +500,7 @@ digest_file (const char *filename, int *binary, unsigned char *bin_result)
if (!is_stdin && fclose (fp) != 0)
{
- error (0, errno, "%s", quote (filename));
+ error (0, errno, "%s", quotef (filename));
return false;
}
@@ -536,7 +535,7 @@ digest_check (const char *checkfile_name)
checkfile_stream = fopen (checkfile_name, "r");
if (checkfile_stream == NULL)
{
- error (0, errno, "%s", quote (checkfile_name));
+ error (0, errno, "%s", quotef (checkfile_name));
return false;
}
}
@@ -554,7 +553,7 @@ digest_check (const char *checkfile_name)
++line_number;
if (line_number == 0)
error (EXIT_FAILURE, 0, _("%s: too many checksum lines"),
- quote (checkfile_name));
+ quotef (checkfile_name));
line_length = getline (&line, &line_chars_allocated, checkfile_stream);
if (line_length <= 0)
@@ -579,7 +578,7 @@ digest_check (const char *checkfile_name)
error (0, 0,
_("%s: %" PRIuMAX
": improperly formatted %s checksum line"),
- quote (checkfile_name), line_number,
+ quotef (checkfile_name), line_number,
DIGEST_TYPE_STRING);
}
@@ -651,13 +650,13 @@ digest_check (const char *checkfile_name)
if (ferror (checkfile_stream))
{
- error (0, 0, _("%s: read error"), quote (checkfile_name));
+ error (0, 0, _("%s: read error"), quotef (checkfile_name));
return false;
}
if (!is_stdin && fclose (checkfile_stream) != 0)
{
- error (0, errno, "%s", quote (checkfile_name));
+ error (0, errno, "%s", quotef (checkfile_name));
return false;
}
@@ -665,7 +664,7 @@ digest_check (const char *checkfile_name)
{
/* Warn if no tests are found. */
error (0, 0, _("%s: no properly formatted %s checksum lines found"),
- quote (checkfile_name), DIGEST_TYPE_STRING);
+ quotef (checkfile_name), DIGEST_TYPE_STRING);
}
else
{
diff --git a/src/mkdir.c b/src/mkdir.c
index ff51ae1e6..ef562fcde 100644
--- a/src/mkdir.c
+++ b/src/mkdir.c
@@ -109,7 +109,7 @@ announce_mkdir (char const *dir, void *options)
{
struct mkdir_options const *o = options;
if (o->created_directory_format)
- prog_fprintf (stdout, o->created_directory_format, quote (dir));
+ prog_fprintf (stdout, o->created_directory_format, quoteaf (dir));
}
/* Make ancestor directory DIR, whose last component is COMPONENT,
@@ -125,7 +125,7 @@ make_ancestor (char const *dir, char const *component, void *options)
if (o->set_security_context && defaultcon (dir, S_IFDIR) < 0
&& ! ignorable_ctx_err (errno))
error (0, errno, _("failed to set default creation context for %s"),
- quote (dir));
+ quoteaf (dir));
mode_t user_wx = S_IWUSR | S_IXUSR;
bool self_denying_umask = (o->umask_value & user_wx) != 0;
@@ -158,7 +158,7 @@ process_dir (char *dir, struct savewd *wd, void *options)
if (! o->make_ancestor_function && defaultcon (dir, S_IFDIR) < 0
&& ! ignorable_ctx_err (errno))
error (0, errno, _("failed to set default creation context for %s"),
- quote (dir));
+ quoteaf (dir));
}
int ret = (make_dir_parents (dir, wd, o->make_ancestor_function, options,
@@ -178,7 +178,7 @@ process_dir (char *dir, struct savewd *wd, void *options)
if (! restorecon (last_component (dir), false, false)
&& ! ignorable_ctx_err (errno))
error (0, errno, _("failed to restore context for %s"),
- quote (dir));
+ quoteaf (dir));
}
return ret;
diff --git a/src/mkfifo.c b/src/mkfifo.c
index 090656bdd..cf460af2b 100644
--- a/src/mkfifo.c
+++ b/src/mkfifo.c
@@ -166,13 +166,13 @@ main (int argc, char **argv)
defaultcon (argv[optind], S_IFIFO);
if (mkfifo (argv[optind], newmode) != 0)
{
- error (0, errno, _("cannot create fifo %s"), quote (argv[optind]));
+ error (0, errno, _("cannot create fifo %s"), quoteaf (argv[optind]));
exit_status = EXIT_FAILURE;
}
else if (specified_mode && lchmod (argv[optind], newmode) != 0)
{
error (0, errno, _("cannot set permissions of %s"),
- quote (argv[optind]));
+ quoteaf (argv[optind]));
exit_status = EXIT_FAILURE;
}
}
diff --git a/src/mknod.c b/src/mknod.c
index ffade1b7a..e06118368 100644
--- a/src/mknod.c
+++ b/src/mknod.c
@@ -250,7 +250,7 @@ main (int argc, char **argv)
defaultcon (argv[optind], node_type);
if (mknod (argv[optind], newmode | node_type, device) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (argv[optind]));
+ error (EXIT_FAILURE, errno, "%s", quotef (argv[optind]));
}
break;
@@ -258,7 +258,7 @@ main (int argc, char **argv)
if (set_security_context)
defaultcon (argv[optind], S_IFIFO);
if (mkfifo (argv[optind], newmode) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (argv[optind]));
+ error (EXIT_FAILURE, errno, "%s", quotef (argv[optind]));
break;
default:
@@ -268,7 +268,7 @@ main (int argc, char **argv)
if (specified_mode && lchmod (argv[optind], newmode) != 0)
error (EXIT_FAILURE, errno, _("cannot set permissions of %s"),
- quote (argv[optind]));
+ quoteaf (argv[optind]));
return EXIT_SUCCESS;
}
diff --git a/src/mv.c b/src/mv.c
index 0bcc1bb69..e3c2f7b8e 100644
--- a/src/mv.c
+++ b/src/mv.c
@@ -29,7 +29,6 @@
#include "cp-hash.h"
#include "error.h"
#include "filenamecat.h"
-#include "quote.h"
#include "remove.h"
#include "root-dev-ino.h"
#include "priv-set.h"
@@ -96,7 +95,7 @@ rm_option_init (struct rm_options *x)
x->root_dev_ino = get_root_dev_ino (&dev_ino_buf);
if (x->root_dev_ino == NULL)
error (EXIT_FAILURE, errno, _("failed to get attributes of %s"),
- quote ("/"));
+ quoteaf ("/"));
}
}
@@ -153,7 +152,7 @@ target_directory_operand (char const *file)
int err = (stat (file, &st) == 0 ? 0 : errno);
bool is_a_dir = !err && S_ISDIR (st.st_mode);
if (err && err != ENOENT)
- error (EXIT_FAILURE, err, _("failed to access %s"), quote (file));
+ error (EXIT_FAILURE, err, _("failed to access %s"), quoteaf (file));
return is_a_dir;
}
@@ -403,10 +402,10 @@ main (int argc, char **argv)
struct stat st;
if (stat (optarg, &st) != 0)
error (EXIT_FAILURE, errno, _("failed to access %s"),
- quote (optarg));
+ quoteaf (optarg));
if (! S_ISDIR (st.st_mode))
error (EXIT_FAILURE, 0, _("target %s is not a directory"),
- quote (optarg));
+ quoteaf (optarg));
}
target_directory = optarg;
break;
@@ -448,7 +447,7 @@ main (int argc, char **argv)
error (0, 0, _("missing file operand"));
else
error (0, 0, _("missing destination file operand after %s"),
- quote (file[0]));
+ quoteaf (file[0]));
usage (EXIT_FAILURE);
}
@@ -460,7 +459,7 @@ main (int argc, char **argv)
"and --no-target-directory (-T)"));
if (2 < n_files)
{
- error (0, 0, _("extra operand %s"), quote (file[2]));
+ error (0, 0, _("extra operand %s"), quoteaf (file[2]));
usage (EXIT_FAILURE);
}
}
@@ -471,7 +470,7 @@ main (int argc, char **argv)
target_directory = file[--n_files];
else if (2 < n_files)
error (EXIT_FAILURE, 0, _("target %s is not a directory"),
- quote (file[n_files - 1]));
+ quoteaf (file[n_files - 1]));
}
if (make_backups && x.interactive == I_ALWAYS_NO)
diff --git a/src/nl.c b/src/nl.c
index f431d9839..0430a9b7f 100644
--- a/src/nl.c
+++ b/src/nl.c
@@ -426,7 +426,7 @@ nl_file (char const *file)
stream = fopen (file, "r");
if (stream == NULL)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
}
@@ -437,14 +437,14 @@ nl_file (char const *file)
if (ferror (stream))
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
if (STREQ (file, "-"))
clearerr (stream); /* Also clear EOF. */
else if (fclose (stream) == EOF)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
return true;
diff --git a/src/nohup.c b/src/nohup.c
index 8cdacedb8..f81d3feea 100644
--- a/src/nohup.c
+++ b/src/nohup.c
@@ -29,7 +29,6 @@
#include "filenamecat.h"
#include "fd-reopen.h"
#include "long-options.h"
-#include "quote.h"
#include "unistd--.h"
#define PROGRAM_NAME "nohup"
@@ -158,10 +157,10 @@ main (int argc, char **argv)
if (out_fd < 0)
{
int saved_errno2 = errno;
- error (0, saved_errno, _("failed to open %s"), quote (file));
+ error (0, saved_errno, _("failed to open %s"), quoteaf (file));
if (in_home)
error (0, saved_errno2, _("failed to open %s"),
- quote (in_home));
+ quoteaf (in_home));
return exit_internal_failure;
}
file = in_home;
@@ -172,7 +171,7 @@ main (int argc, char **argv)
_(ignoring_input
? N_("ignoring input and appending output to %s")
: N_("appending output to %s")),
- quote (file));
+ quoteaf (file));
free (in_home);
}
@@ -227,7 +226,7 @@ main (int argc, char **argv)
In other words, output the diagnostic if possible, but only if
it will go to the original stderr. */
if (dup2 (saved_stderr_fd, STDERR_FILENO) == STDERR_FILENO)
- error (0, saved_errno, _("failed to run command %s"), quote (*cmd));
+ error (0, saved_errno, _("failed to run command %s"), quoteaf (*cmd));
return exit_status;
}
diff --git a/src/od.c b/src/od.c
index 643fb3878..f8e806be0 100644
--- a/src/od.c
+++ b/src/od.c
@@ -921,7 +921,7 @@ open_next_file (void)
in_stream = fopen (input_filename, (O_BINARY ? "rb" : "r"));
if (in_stream == NULL)
{
- error (0, errno, "%s", quote (input_filename));
+ error (0, errno, "%s", quotef (input_filename));
ok = false;
}
}
@@ -950,14 +950,14 @@ check_and_close (int in_errno)
{
if (ferror (in_stream))
{
- error (0, in_errno, _("%s: read error"), quote (input_filename));
+ error (0, in_errno, _("%s: read error"), quotef (input_filename));
if (! STREQ (file_list[-1], "-"))
fclose (in_stream);
ok = false;
}
else if (! STREQ (file_list[-1], "-") && fclose (in_stream) != 0)
{
- error (0, errno, "%s", quote (input_filename));
+ error (0, errno, "%s", quotef (input_filename));
ok = false;
}
@@ -1092,7 +1092,7 @@ skip (uintmax_t n_skip)
else /* cannot fstat() file */
{
- error (0, errno, "%s", quote (input_filename));
+ error (0, errno, "%s", quotef (input_filename));
ok = false;
}
diff --git a/src/paste.c b/src/paste.c
index fd6f033f6..5781ccd3e 100644
--- a/src/paste.c
+++ b/src/paste.c
@@ -43,8 +43,6 @@
#include "system.h"
#include "error.h"
#include "fadvise.h"
-#include "quote.h"
-#include "quotearg.h"
/* The official name of this program (e.g., no 'g' prefix). */
#define PROGRAM_NAME "paste"
@@ -210,7 +208,7 @@ paste_parallel (size_t nfiles, char **fnamptr)
{
fileptr[files_open] = fopen (fnamptr[files_open], "r");
if (fileptr[files_open] == NULL)
- error (EXIT_FAILURE, errno, "%s", quote (fnamptr[files_open]));
+ error (EXIT_FAILURE, errno, "%s", quotef (fnamptr[files_open]));
else if (fileno (fileptr[files_open]) == STDIN_FILENO)
opened_stdin = true;
fadvise (fileptr[files_open], FADVISE_SEQUENTIAL);
@@ -268,14 +266,14 @@ paste_parallel (size_t nfiles, char **fnamptr)
{
if (ferror (fileptr[i]))
{
- error (0, err, "%s", quote (fnamptr[i]));
+ error (0, err, "%s", quotef (fnamptr[i]));
ok = false;
}
if (fileptr[i] == stdin)
clearerr (fileptr[i]); /* Also clear EOF. */
else if (fclose (fileptr[i]) == EOF)
{
- error (0, errno, "%s", quote (fnamptr[i]));
+ error (0, errno, "%s", quotef (fnamptr[i]));
ok = false;
}
@@ -366,7 +364,7 @@ paste_serial (size_t nfiles, char **fnamptr)
fileptr = fopen (*fnamptr, "r");
if (fileptr == NULL)
{
- error (0, errno, "%s", quote (*fnamptr));
+ error (0, errno, "%s", quotef (*fnamptr));
ok = false;
continue;
}
@@ -412,14 +410,14 @@ paste_serial (size_t nfiles, char **fnamptr)
if (ferror (fileptr))
{
- error (0, saved_errno, "%s", quote (*fnamptr));
+ error (0, saved_errno, "%s", quotef (*fnamptr));
ok = false;
}
if (is_stdin)
clearerr (fileptr); /* Also clear EOF. */
else if (fclose (fileptr) == EOF)
{
- error (0, errno, "%s", quote (*fnamptr));
+ error (0, errno, "%s", quotef (*fnamptr));
ok = false;
}
}
diff --git a/src/pathchk.c b/src/pathchk.c
index d9f3bceb6..fbd2b5132 100644
--- a/src/pathchk.c
+++ b/src/pathchk.c
@@ -23,7 +23,6 @@
#include "system.h"
#include "error.h"
#include "quote.h"
-#include "quotearg.h"
/* The official name of this program (e.g., no 'g' prefix). */
#define PROGRAM_NAME "pathchk"
@@ -168,7 +167,7 @@ no_leading_hyphen (char const *file)
if (p == file || p[-1] == '/')
{
error (0, 0, _("leading '-' in a component of file name %s"),
- quote (file));
+ quoteaf (file));
return false;
}
@@ -196,7 +195,7 @@ portable_chars_only (char const *file, size_t filelen)
_("nonportable character %s in file name %s"),
quotearg_n_style_mem (1, locale_quoting_style, invalid,
(charlen <= MB_LEN_MAX ? charlen : 1)),
- quote_n (0, file));
+ quoteaf_n (0, file));
return false;
}
@@ -290,7 +289,7 @@ validate_file_name (char *file, bool check_basic_portability,
file_exists = true;
else if (errno != ENOENT || filelen == 0)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
}
@@ -323,7 +322,7 @@ validate_file_name (char *file, bool check_basic_portability,
unsigned long int len = filelen;
unsigned long int maxlen = maxsize - 1;
error (0, 0, _("limit %lu exceeded by length %lu of file name %s"),
- maxlen, len, quote (file));
+ maxlen, len, quoteaf (file));
return false;
}
}
@@ -393,7 +392,7 @@ validate_file_name (char *file, bool check_basic_portability,
default:
*start = '\0';
- error (0, errno, "%s", quote (dir));
+ error (0, errno, "%s", quotef (dir));
*start = c;
return false;
}
diff --git a/src/pinky.c b/src/pinky.c
index f969e5b97..14ba72ce0 100644
--- a/src/pinky.c
+++ b/src/pinky.c
@@ -27,7 +27,6 @@
#include "canon-host.h"
#include "error.h"
#include "hard-locale.h"
-#include "quote.h"
#include "readutmp.h"
/* The official name of this program (e.g., no 'g' prefix). */
@@ -469,7 +468,7 @@ short_pinky (const char *filename,
STRUCT_UTMP *utmp_buf = NULL;
if (read_utmp (filename, &n_users, &utmp_buf, 0) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (filename));
+ error (EXIT_FAILURE, errno, "%s", quotef (filename));
scan_entries (n_users, utmp_buf, argc_names, argv_names);
diff --git a/src/pr.c b/src/pr.c
index d16b18613..a01a0db1c 100644
--- a/src/pr.c
+++ b/src/pr.c
@@ -1465,7 +1465,7 @@ open_file (char *name, COLUMN *p)
{
failed_opens = true;
if (!ignore_failed_opens)
- error (0, errno, "%s", quote (name));
+ error (0, errno, "%s", quotef (name));
return false;
}
fadvise (p->fp, FADVISE_SEQUENTIAL);
@@ -1489,9 +1489,9 @@ close_file (COLUMN *p)
if (p->status == CLOSED)
return;
if (ferror (p->fp))
- error (EXIT_FAILURE, errno, "%s", quote (p->name));
+ error (EXIT_FAILURE, errno, "%s", quotef (p->name));
if (fileno (p->fp) != STDIN_FILENO && fclose (p->fp) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (p->name));
+ error (EXIT_FAILURE, errno, "%s", quotef (p->name));
if (!parallel_files)
{
diff --git a/src/ptx.c b/src/ptx.c
index c489301a3..54d1bc22c 100644
--- a/src/ptx.c
+++ b/src/ptx.c
@@ -520,7 +520,7 @@ swallow_file_in_memory (const char *file_name, BLOCK *block)
block->start = read_file (file_name, &used_length);
if (!block->start)
- error (EXIT_FAILURE, errno, "%s", quote (using_stdin ? "-" : file_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (using_stdin ? "-" : file_name));
block->end = block->start + used_length;
}
@@ -2076,7 +2076,7 @@ main (int argc, char **argv)
if (optind < argc)
{
if (! freopen (argv[optind], "w", stdout))
- error (EXIT_FAILURE, errno, "%s", quote (argv[optind]));
+ error (EXIT_FAILURE, errno, "%s", quotef (argv[optind]));
optind++;
}
diff --git a/src/pwd.c b/src/pwd.c
index 9b9ddeb20..32e5d6714 100644
--- a/src/pwd.c
+++ b/src/pwd.c
@@ -274,10 +274,10 @@ robust_getcwd (struct file_name *file_name)
if (root_dev_ino == NULL)
error (EXIT_FAILURE, errno, _("failed to get attributes of %s"),
- quote ("/"));
+ quoteaf ("/"));
if (stat (".", &dot_sb) < 0)
- error (EXIT_FAILURE, errno, _("failed to stat %s"), quote ("."));
+ error (EXIT_FAILURE, errno, _("failed to stat %s"), quoteaf ("."));
while (1)
{
diff --git a/src/readlink.c b/src/readlink.c
index 2b61fda92..aba466b29 100644
--- a/src/readlink.c
+++ b/src/readlink.c
@@ -25,7 +25,6 @@
#include "canonicalize.h"
#include "error.h"
#include "areadlink.h"
-#include "quote.h"
/* The official name of this program (e.g., no 'g' prefix). */
#define PROGRAM_NAME "readlink"
@@ -171,7 +170,7 @@ main (int argc, char **argv)
{
status = EXIT_FAILURE;
if (verbose)
- error (0, errno, "%s", quote (fname));
+ error (0, errno, "%s", quotef (fname));
}
}
diff --git a/src/realpath.c b/src/realpath.c
index 9f8754de6..febf956d9 100644
--- a/src/realpath.c
+++ b/src/realpath.c
@@ -24,7 +24,6 @@
#include "system.h"
#include "canonicalize.h"
#include "error.h"
-#include "quote.h"
#include "relpath.h"
/* The official name of this program (e.g., no 'g' prefix). */
@@ -143,7 +142,7 @@ isdir (const char *path)
{
struct stat sb;
if (stat (path, &sb) != 0)
- error (EXIT_FAILURE, errno, _("cannot stat %s"), quote (path));
+ error (EXIT_FAILURE, errno, _("cannot stat %s"), quoteaf (path));
return S_ISDIR (sb.st_mode);
}
@@ -154,7 +153,7 @@ process_path (const char *fname, int can_mode)
if (!can_fname)
{
if (verbose)
- error (0, errno, "%s", quote (fname));
+ error (0, errno, "%s", quotef (fname));
return false;
}
@@ -246,9 +245,9 @@ main (int argc, char **argv)
{
can_relative_to = realpath_canon (relative_to, can_mode);
if (!can_relative_to)
- error (EXIT_FAILURE, errno, "%s", quote (relative_to));
+ error (EXIT_FAILURE, errno, "%s", quotef (relative_to));
if (need_dir && !isdir (can_relative_to))
- error (EXIT_FAILURE, ENOTDIR, "%s", quote (relative_to));
+ error (EXIT_FAILURE, ENOTDIR, "%s", quotef (relative_to));
}
if (relative_base == relative_to)
can_relative_base = can_relative_to;
@@ -256,9 +255,9 @@ main (int argc, char **argv)
{
char *base = realpath_canon (relative_base, can_mode);
if (!base)
- error (EXIT_FAILURE, errno, "%s", quote (relative_base));
+ error (EXIT_FAILURE, errno, "%s", quotef (relative_base));
if (need_dir && !isdir (base))
- error (EXIT_FAILURE, ENOTDIR, "%s", quote (relative_base));
+ error (EXIT_FAILURE, ENOTDIR, "%s", quotef (relative_base));
/* --relative-to is a no-op if it does not have --relative-base
as a prefix */
if (path_prefix (base, can_relative_to))
diff --git a/src/remove.c b/src/remove.c
index db8f993ea..63ee73ed8 100644
--- a/src/remove.c
+++ b/src/remove.c
@@ -25,7 +25,6 @@
#include "error.h"
#include "file-type.h"
#include "ignore-value.h"
-#include "quote.h"
#include "remove.h"
#include "root-dev-ino.h"
#include "write-any-file.h"
@@ -256,7 +255,7 @@ prompt (FTS const *fts, FTSENT const *ent, bool is_dir,
break;
}
- char const *quoted_name = quote (full_name);
+ char const *quoted_name = quoteaf (full_name);
if (write_protected < 0)
{
@@ -372,8 +371,8 @@ excise (FTS *fts, FTSENT *ent, struct rm_options const *x, bool is_dir)
if (x->verbose)
{
printf ((is_dir
- ? _("removed directory: %s\n")
- : _("removed %s\n")), quote (ent->fts_path));
+ ? _("removed directory %s\n")
+ : _("removed %s\n")), quoteaf (ent->fts_path));
}
return RM_OK;
}
@@ -403,7 +402,7 @@ excise (FTS *fts, FTSENT *ent, struct rm_options const *x, bool is_dir)
|| errno == EEXIST)
&& (ent->fts_errno == EPERM || ent->fts_errno == EACCES))
errno = ent->fts_errno;
- error (0, errno, _("cannot remove %s"), quote (ent->fts_path));
+ error (0, errno, _("cannot remove %s"), quoteaf (ent->fts_path));
mark_ancestor_dirs (ent);
return RM_ERROR;
}
@@ -429,7 +428,7 @@ rm_fts (FTS *fts, FTSENT *ent, struct rm_options const *x)
Not recursive, and it's not an empty directory (if we're removing
them) so arrange to skip contents. */
int err = x->remove_empty_directories ? ENOTEMPTY : EISDIR;
- error (0, err, _("cannot remove %s"), quote (ent->fts_path));
+ error (0, err, _("cannot remove %s"), quoteaf (ent->fts_path));
mark_ancestor_dirs (ent);
fts_skip_tree (fts, ent);
return RM_ERROR;
@@ -445,8 +444,8 @@ rm_fts (FTS *fts, FTSENT *ent, struct rm_options const *x)
{
error (0, 0,
_("refusing to remove %s or %s directory: skipping %s"),
- quote_n (0, "."), quote_n (1, ".."),
- quote_n (2, ent->fts_path));
+ quoteaf_n (0, "."), quoteaf_n (1, ".."),
+ quoteaf_n (2, ent->fts_path));
fts_skip_tree (fts, ent);
return RM_ERROR;
}
@@ -503,7 +502,7 @@ rm_fts (FTS *fts, FTSENT *ent, struct rm_options const *x)
{
mark_ancestor_dirs (ent);
error (0, 0, _("skipping %s, since it's on a different device"),
- quote (ent->fts_path));
+ quoteaf (ent->fts_path));
return RM_ERROR;
}
@@ -523,7 +522,7 @@ rm_fts (FTS *fts, FTSENT *ent, struct rm_options const *x)
/* Various failures, from opendir to ENOMEM, to failure to "return"
to preceding directory, can provoke this. */
error (0, ent->fts_errno, _("traversal failed: %s"),
- quote (ent->fts_path));
+ quotef (ent->fts_path));
fts_skip_tree (fts, ent);
return RM_ERROR;
@@ -531,7 +530,7 @@ rm_fts (FTS *fts, FTSENT *ent, struct rm_options const *x)
error (0, 0, _("unexpected failure: fts_info=%d: %s\n"
"please report to %s"),
ent->fts_info,
- quote (ent->fts_path),
+ quotef (ent->fts_path),
PACKAGE_BUGREPORT);
abort ();
}
diff --git a/src/rm.c b/src/rm.c
index c1a23d5fe..a82252b5d 100644
--- a/src/rm.c
+++ b/src/rm.c
@@ -27,8 +27,6 @@
#include "system.h"
#include "argmatch.h"
#include "error.h"
-#include "quote.h"
-#include "quotearg.h"
#include "remove.h"
#include "root-dev-ino.h"
#include "yesno.h"
@@ -118,8 +116,8 @@ diagnose_leading_hyphen (int argc, char **argv)
fprintf (stderr,
_("Try '%s ./%s' to remove the file %s.\n"),
argv[0],
- quotearg_n_style (1, shell_quoting_style, arg),
- quote (arg));
+ quotearg_n_style (1, shell_escape_quoting_style, arg),
+ quoteaf (arg));
break;
}
}
@@ -329,7 +327,7 @@ main (int argc, char **argv)
x.root_dev_ino = get_root_dev_ino (&dev_ino_buf);
if (x.root_dev_ino == NULL)
error (EXIT_FAILURE, errno, _("failed to get attributes of %s"),
- quote ("/"));
+ quoteaf ("/"));
}
uintmax_t n_files = argc - optind;
diff --git a/src/rmdir.c b/src/rmdir.c
index 457e855e2..083d0a04e 100644
--- a/src/rmdir.c
+++ b/src/rmdir.c
@@ -30,7 +30,6 @@
#include "system.h"
#include "error.h"
#include "prog-fprintf.h"
-#include "quote.h"
/* The official name of this program (e.g., no 'g' prefix). */
#define PROGRAM_NAME "rmdir"
@@ -131,7 +130,7 @@ remove_parents (char *dir)
/* Give a diagnostic for each attempted removal if --verbose. */
if (verbose)
- prog_fprintf (stdout, _("removing directory, %s"), quote (dir));
+ prog_fprintf (stdout, _("removing directory, %s"), quoteaf (dir));
ok = (rmdir (dir) == 0);
@@ -146,7 +145,7 @@ remove_parents (char *dir)
{
/* Barring race conditions, DIR is expected to be a directory. */
error (0, errno, _("failed to remove directory %s"),
- quote (dir));
+ quoteaf (dir));
}
break;
}
@@ -230,7 +229,7 @@ main (int argc, char **argv)
/* Give a diagnostic for each attempted removal if --verbose. */
if (verbose)
- prog_fprintf (stdout, _("removing directory, %s"), quote (dir));
+ prog_fprintf (stdout, _("removing directory, %s"), quoteaf (dir));
if (rmdir (dir) != 0)
{
@@ -239,7 +238,7 @@ main (int argc, char **argv)
/* Here, the diagnostic is less precise, since we have no idea
whether DIR is a directory. */
- error (0, errno, _("failed to remove %s"), quote (dir));
+ error (0, errno, _("failed to remove %s"), quoteaf (dir));
ok = false;
}
else if (remove_empty_parents)
diff --git a/src/runcon.c b/src/runcon.c
index d5ec57958..95b434a45 100644
--- a/src/runcon.c
+++ b/src/runcon.c
@@ -213,7 +213,7 @@ main (int argc, char **argv)
if (getfilecon (argv[optind], &file_context) == -1)
error (EXIT_FAILURE, errno,
_("failed to get security context of %s"),
- quote (argv[optind]));
+ quoteaf (argv[optind]));
/* compute result of process transition */
if (security_compute_create (cur_context, file_context,
string_to_security_class ("process"),
diff --git a/src/selinux.c b/src/selinux.c
index 99b1fb0bf..6479c9392 100644
--- a/src/selinux.c
+++ b/src/selinux.c
@@ -26,7 +26,6 @@
#include "canonicalize.h"
#include "dosname.h"
#include "xfts.h"
-#include "quote.h"
#include "selinux.h"
#if HAVE_SELINUX_SELINUX_H
@@ -125,7 +124,7 @@ defaultcon (char const *path, mode_t mode)
newpath = canonicalize_filename_mode (path, CAN_MISSING);
if (! newpath)
error (EXIT_FAILURE, errno, _("error canonicalizing %s"),
- quote (path));
+ quoteaf (path));
path = newpath;
}
@@ -298,7 +297,7 @@ restorecon (char const *path, bool recurse, bool local)
newpath = canonicalize_filename_mode (path, CAN_MISSING);
if (! newpath)
error (EXIT_FAILURE, errno, _("error canonicalizing %s"),
- quote (path));
+ quoteaf (path));
}
const char *ftspath[2] = { newpath ? newpath : path, NULL };
diff --git a/src/shred.c b/src/shred.c
index 9c6752881..08e212a23 100644
--- a/src/shred.c
+++ b/src/shred.c
@@ -90,7 +90,6 @@
#include "error.h"
#include "fcntl--.h"
#include "human.h"
-#include "quote.h"
#include "randint.h"
#include "randread.h"
#include "stat-size.h"
@@ -1082,7 +1081,7 @@ wipename (char *oldname, char const *qoldname, struct Options const *flags)
char *base = last_component (newname);
size_t len = base_len (base);
char *dir = dir_name (newname);
- char *qdir = xstrdup (quote (dir));
+ char *qdir = xstrdup (quotef (dir));
bool first = true;
bool ok = true;
int dir_fd = -1;
@@ -1302,12 +1301,12 @@ main (int argc, char **argv)
randint_source = randint_all_new (random_source, SIZE_MAX);
if (! randint_source)
- error (EXIT_FAILURE, errno, "%s", quote (random_source));
+ error (EXIT_FAILURE, errno, "%s", quotef (random_source));
atexit (clear_random_data);
for (i = 0; i < n_files; i++)
{
- char *qname = xstrdup (quote (file[i]));
+ char *qname = xstrdup (quotef (file[i]));
if (STREQ (file[i], "-"))
{
ok &= wipefd (STDOUT_FILENO, qname, randint_source, &flags);
diff --git a/src/shuf.c b/src/shuf.c
index d7b5a3521..507a4c64a 100644
--- a/src/shuf.c
+++ b/src/shuf.c
@@ -519,7 +519,7 @@ main (int argc, char **argv)
if (n_operands == 1)
if (! (STREQ (operand[0], "-") || ! head_lines
|| freopen (operand[0], "r", stdin)))
- error (EXIT_FAILURE, errno, "%s", quote (operand[0]));
+ error (EXIT_FAILURE, errno, "%s", quotef (operand[0]));
fadvise (stdin, FADVISE_SEQUENTIAL);
@@ -544,7 +544,7 @@ main (int argc, char **argv)
? SIZE_MAX
: randperm_bound (head_lines, n_lines)));
if (! randint_source)
- error (EXIT_FAILURE, errno, "%s", quote (random_source));
+ error (EXIT_FAILURE, errno, "%s", quotef (random_source));
if (use_reservoir_sampling)
{
@@ -566,7 +566,7 @@ main (int argc, char **argv)
permutation = randperm_new (randint_source, head_lines, n_lines);
if (outfile && ! freopen (outfile, "w", stdout))
- error (EXIT_FAILURE, errno, "%s", quote (outfile));
+ error (EXIT_FAILURE, errno, "%s", quotef (outfile));
/* Generate output according to requested method */
if (repeat)
diff --git a/src/sort.c b/src/sort.c
index 3e741027c..38d817544 100644
--- a/src/sort.c
+++ b/src/sort.c
@@ -44,7 +44,6 @@
#include "physmem.h"
#include "posixver.h"
#include "quote.h"
-#include "quotearg.h"
#include "randread.h"
#include "readtokens0.h"
#include "stdio--.h"
@@ -409,7 +408,7 @@ static void
die (char const *message, char const *file)
{
error (0, errno, "%s: %s", message,
- quote (file ? file : _("standard output")));
+ quotef (file ? file : _("standard output")));
exit (SORT_FAILURE);
}
@@ -723,12 +722,12 @@ reap (pid_t pid)
if (cpid < 0)
error (SORT_FAILURE, errno, _("waiting for %s [-d]"),
- quote (compress_program));
+ quoteaf (compress_program));
else if (0 < cpid && (0 < pid || delete_proc (cpid)))
{
if (! WIFEXITED (status) || WEXITSTATUS (status))
error (SORT_FAILURE, 0, _("%s [-d] terminated abnormally"),
- quote (compress_program));
+ quoteaf (compress_program));
--nprocs;
}
@@ -882,7 +881,7 @@ create_temp_file (int *pfd, bool survive_fd_exhaustion)
{
if (! (survive_fd_exhaustion && errno == EMFILE))
error (SORT_FAILURE, errno, _("cannot create temporary file in %s"),
- quote (temp_dir));
+ quoteaf (temp_dir));
free (node);
node = NULL;
}
@@ -958,7 +957,7 @@ stream_open (char const *file, char const *how)
{
if (file && ftruncate (STDOUT_FILENO, 0) != 0)
error (SORT_FAILURE, errno, _("%s: error truncating"),
- quote (file));
+ quotef (file));
fp = stdout;
}
else
@@ -1177,7 +1176,7 @@ open_temp (struct tempnode *temp)
case -1:
if (errno != EMFILE)
error (SORT_FAILURE, errno, _("couldn't create process for %s -d"),
- quote (compress_program));
+ quoteaf (compress_program));
close (tempfd);
errno = EMFILE;
break;
@@ -1249,7 +1248,7 @@ zaptemp (char const *name)
cs_leave (cs);
if (unlink_status != 0)
- error (0, unlink_errno, _("warning: cannot remove: %s"), quote (name));
+ error (0, unlink_errno, _("warning: cannot remove: %s"), quotef (name));
if (! next)
temptail = pnode;
free (node);
@@ -4570,7 +4569,7 @@ main (int argc, char **argv)
on the command-line. */
if (nfiles)
{
- error (0, 0, _("extra operand %s"), quote (files[0]));
+ error (0, 0, _("extra operand %s"), quoteaf (files[0]));
fprintf (stderr, "%s\n",
_("file operands cannot be combined with --files0-from"));
usage (SORT_FAILURE);
@@ -4583,14 +4582,14 @@ main (int argc, char **argv)
stream = fopen (files_from, "r");
if (stream == NULL)
error (SORT_FAILURE, errno, _("cannot open %s for reading"),
- quote (files_from));
+ quoteaf (files_from));
}
readtokens0_init (&tok);
if (! readtokens0 (stream, &tok) || fclose (stream) != 0)
error (SORT_FAILURE, 0, _("cannot read file names from %s"),
- quote (files_from));
+ quoteaf (files_from));
if (tok.n_tok)
{
@@ -4603,7 +4602,7 @@ main (int argc, char **argv)
if (STREQ (files[i], "-"))
error (SORT_FAILURE, 0, _("when reading file names from stdin, "
"no file name of %s allowed"),
- quote (files[i]));
+ quoteaf (files[i]));
else if (files[i][0] == '\0')
{
/* Using the standard 'filename:line-number:' prefix here is
@@ -4612,13 +4611,13 @@ main (int argc, char **argv)
unsigned long int file_number = i + 1;
error (SORT_FAILURE, 0,
_("%s:%lu: invalid zero-length file name"),
- quote (files_from), file_number);
+ quotef (files_from), file_number);
}
}
}
else
error (SORT_FAILURE, 0, _("no input from %s"),
- quote (files_from));
+ quoteaf (files_from));
}
/* Inheritance of global options to individual keys. */
@@ -4701,7 +4700,7 @@ main (int argc, char **argv)
{
if (nfiles > 1)
error (SORT_FAILURE, 0, _("extra operand %s not allowed with -%c"),
- quote (files[1]), checkonly);
+ quoteaf (files[1]), checkonly);
if (outfile)
{
diff --git a/src/split.c b/src/split.c
index f16cb518e..5d6037672 100644
--- a/src/split.c
+++ b/src/split.c
@@ -291,11 +291,11 @@ input_file_size (int fd, off_t size, char *buf, size_t bufsize)
if (n_read == 0)
break;
if (n_read == SAFE_READ_ERROR)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
size += n_read;
}
if (bufsize <= size && lseek (fd, - size, SEEK_CUR) < 0)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
}
return size;
@@ -384,7 +384,7 @@ new_name:
char *dir = dir_name (outfile);
long name_max = pathconf (dir, _PC_NAME_MAX);
if (0 <= name_max && name_max < base_len (last_component (outfile)))
- error (EXIT_FAILURE, ENAMETOOLONG, "%s", quote (outfile));
+ error (EXIT_FAILURE, ENAMETOOLONG, "%s", quotef (outfile));
free (dir);
}
#endif
@@ -417,19 +417,19 @@ create (const char *name)
if (!filter_command)
{
if (verbose)
- fprintf (stdout, _("creating file %s\n"), quote (name));
+ fprintf (stdout, _("creating file %s\n"), quoteaf (name));
int fd = open (name, O_WRONLY | O_CREAT | O_BINARY, MODE_RW_UGO);
if (fd < 0)
return fd;
struct stat out_stat_buf;
if (fstat (fd, &out_stat_buf) != 0)
- error (EXIT_FAILURE, errno, _("failed to stat %s"), quote (name));
+ error (EXIT_FAILURE, errno, _("failed to stat %s"), quoteaf (name));
if (SAME_INODE (in_stat_buf, out_stat_buf))
error (EXIT_FAILURE, 0, _("%s would overwrite input; aborting"),
- quote (name));
+ quoteaf (name));
if (ftruncate (fd, 0) != 0)
- error (EXIT_FAILURE, errno, _("%s: error truncating"), quote (name));
+ error (EXIT_FAILURE, errno, _("%s: error truncating"), quotef (name));
return fd;
}
@@ -444,7 +444,7 @@ create (const char *name)
error (EXIT_FAILURE, errno,
_("failed to set FILE environment variable"));
if (verbose)
- fprintf (stdout, _("executing with FILE=%s\n"), quote (name));
+ fprintf (stdout, _("executing with FILE=%s\n"), quotef (name));
if (pipe (fd_pair) != 0)
error (EXIT_FAILURE, errno, _("failed to create pipe"));
child_pid = fork ();
@@ -496,11 +496,11 @@ static void
closeout (FILE *fp, int fd, pid_t pid, char const *name)
{
if (fp != NULL && fclose (fp) != 0 && ! ignorable (errno))
- error (EXIT_FAILURE, errno, "%s", quote (name));
+ error (EXIT_FAILURE, errno, "%s", quotef (name));
if (fd >= 0)
{
if (fp == NULL && close (fd) < 0)
- error (EXIT_FAILURE, errno, "%s", quote (name));
+ error (EXIT_FAILURE, errno, "%s", quotef (name));
int j;
for (j = 0; j < n_open_pipes; ++j)
{
@@ -526,7 +526,7 @@ closeout (FILE *fp, int fd, pid_t pid, char const *name)
sprintf (signame, "%d", sig);
error (sig + 128, 0,
_("with FILE=%s, signal %s from command: %s"),
- quote (name), signame, filter_command);
+ quotef (name), signame, filter_command);
}
}
else if (WIFEXITED (wstatus))
@@ -534,7 +534,7 @@ closeout (FILE *fp, int fd, pid_t pid, char const *name)
int ex = WEXITSTATUS (wstatus);
if (ex != 0)
error (ex, 0, _("with FILE=%s, exit %d from command: %s"),
- quote (name), ex, filter_command);
+ quotef (name), ex, filter_command);
}
else
{
@@ -559,10 +559,10 @@ cwrite (bool new_file_flag, const char *bp, size_t bytes)
closeout (NULL, output_desc, filter_pid, outfile);
next_file_name ();
if ((output_desc = create (outfile)) < 0)
- error (EXIT_FAILURE, errno, "%s", quote (outfile));
+ error (EXIT_FAILURE, errno, "%s", quotef (outfile));
}
if (full_write (output_desc, bp, bytes) != bytes && ! ignorable (errno))
- error (EXIT_FAILURE, errno, "%s", quote (outfile));
+ error (EXIT_FAILURE, errno, "%s", quotef (outfile));
}
/* Split into pieces of exactly N_BYTES bytes.
@@ -592,7 +592,7 @@ bytes_split (uintmax_t n_bytes, char *buf, size_t bufsize, size_t initial_read,
{
n_read = safe_read (STDIN_FILENO, buf, bufsize);
if (n_read == SAFE_READ_ERROR)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
}
bp_out = buf;
to_read = n_read;
@@ -651,7 +651,7 @@ lines_split (uintmax_t n_lines, char *buf, size_t bufsize)
{
n_read = safe_read (STDIN_FILENO, buf, bufsize);
if (n_read == SAFE_READ_ERROR)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
bp = bp_out = buf;
eob = bp + n_read;
*eob = eolchar;
@@ -700,7 +700,7 @@ line_bytes_split (uintmax_t n_bytes, char *buf, size_t bufsize)
{
n_read = safe_read (STDIN_FILENO, buf, bufsize);
if (n_read == SAFE_READ_ERROR)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
size_t n_left = n_read;
char *sob = buf;
while (n_left)
@@ -823,7 +823,7 @@ lines_chunk_split (uintmax_t k, uintmax_t n, char *buf, size_t bufsize,
initial_read -= start;
}
else if (lseek (STDIN_FILENO, start, SEEK_CUR) < 0)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
n_written = start;
chunk_no = k - 1;
chunk_end = chunk_no * chunk_size - 1;
@@ -842,7 +842,7 @@ lines_chunk_split (uintmax_t k, uintmax_t n, char *buf, size_t bufsize,
{
n_read = safe_read (STDIN_FILENO, buf, bufsize);
if (n_read == SAFE_READ_ERROR)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
}
if (n_read == 0)
break; /* eof. */
@@ -937,7 +937,7 @@ bytes_chunk_extract (uintmax_t k, uintmax_t n, char *buf, size_t bufsize,
initial_read -= start;
}
else if (lseek (STDIN_FILENO, start, SEEK_CUR) < 0)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
while (start < end)
{
@@ -951,14 +951,14 @@ bytes_chunk_extract (uintmax_t k, uintmax_t n, char *buf, size_t bufsize,
{
n_read = safe_read (STDIN_FILENO, buf, bufsize);
if (n_read == SAFE_READ_ERROR)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
}
if (n_read == 0)
break; /* eof. */
n_read = MIN (n_read, end - start);
if (full_write (STDOUT_FILENO, buf, n_read) != n_read
&& ! ignorable (errno))
- error (EXIT_FAILURE, errno, "%s", quote ("-"));
+ error (EXIT_FAILURE, errno, "%s", quotef ("-"));
start += n_read;
}
}
@@ -1023,7 +1023,7 @@ ofile_open (of_t *files, size_t i_check, size_t nfiles)
break;
if (!(errno == EMFILE || errno == ENFILE))
- error (EXIT_FAILURE, errno, "%s", quote (files[i_check].of_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (files[i_check].of_name));
file_limit = true;
@@ -1034,18 +1034,18 @@ ofile_open (of_t *files, size_t i_check, size_t nfiles)
/* No more open files to close, exit with E[NM]FILE. */
if (i_reopen == i_check)
error (EXIT_FAILURE, errno, "%s",
- quote (files[i_check].of_name));
+ quotef (files[i_check].of_name));
}
if (fclose (files[i_reopen].ofile) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (files[i_reopen].of_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (files[i_reopen].of_name));
files[i_reopen].ofile = NULL;
files[i_reopen].ofd = OFD_APPEND;
}
files[i_check].ofd = fd;
if (!(files[i_check].ofile = fdopen (fd, "a")))
- error (EXIT_FAILURE, errno, "%s", quote (files[i_check].of_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (files[i_check].of_name));
files[i_check].opid = filter_pid;
filter_pid = 0;
}
@@ -1094,7 +1094,7 @@ lines_rr (uintmax_t k, uintmax_t n, char *buf, size_t bufsize)
char *bp = buf, *eob;
size_t n_read = safe_read (STDIN_FILENO, buf, bufsize);
if (n_read == SAFE_READ_ERROR)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
else if (n_read == 0)
break; /* eof. */
eob = buf + n_read;
@@ -1142,14 +1142,14 @@ lines_rr (uintmax_t k, uintmax_t n, char *buf, size_t bufsize)
&& ! ignorable (errno))
{
error (EXIT_FAILURE, errno, "%s",
- quote (files[i_file].of_name));
+ quotef (files[i_file].of_name));
}
}
else if (fwrite (bp, to_write, 1, files[i_file].ofile) != 1
&& ! ignorable (errno))
{
error (EXIT_FAILURE, errno, "%s",
- quote (files[i_file].of_name));
+ quotef (files[i_file].of_name));
}
if (! ignorable (errno))
wrote = true;
@@ -1159,7 +1159,7 @@ lines_rr (uintmax_t k, uintmax_t n, char *buf, size_t bufsize)
if (fclose (files[i_file].ofile) != 0)
{
error (EXIT_FAILURE, errno, "%s",
- quote (files[i_file].of_name));
+ quotef (files[i_file].of_name));
}
files[i_file].ofile = NULL;
files[i_file].ofd = OFD_APPEND;
@@ -1494,7 +1494,7 @@ main (int argc, char **argv)
if (! STREQ (infile, "-")
&& fd_reopen (STDIN_FILENO, infile, O_RDONLY, 0) < 0)
error (EXIT_FAILURE, errno, _("cannot open %s for reading"),
- quote (infile));
+ quoteaf (infile));
/* Binary I/O is safer when byte counts are used. */
if (O_BINARY && ! isatty (STDIN_FILENO))
@@ -1503,7 +1503,7 @@ main (int argc, char **argv)
/* Get the optimal block size of input device and make a buffer. */
if (fstat (STDIN_FILENO, &in_stat_buf) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
bool specified_buf_size = !! in_blk_size;
if (! specified_buf_size)
@@ -1537,7 +1537,7 @@ main (int argc, char **argv)
}
if (input_offset < 0)
error (EXIT_FAILURE, 0, _("%s: cannot determine file size"),
- quote (infile));
+ quotef (infile));
/* Overflow, and sanity checking. */
if (OFF_T_MAX < n_units)
{
@@ -1605,7 +1605,7 @@ main (int argc, char **argv)
IF_LINT (free (b));
if (close (STDIN_FILENO) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
closeout (NULL, output_desc, filter_pid, outfile);
return EXIT_SUCCESS;
diff --git a/src/stat.c b/src/stat.c
index a8a8c9d64..0721457d9 100644
--- a/src/stat.c
+++ b/src/stat.c
@@ -733,7 +733,7 @@ out_file_context (char *pformat, size_t prefix_len, char const *filename)
: lgetfilecon (filename, &scontext)) < 0)
{
error (0, errno, _("failed to get security context of %s"),
- quote (filename));
+ quoteaf (filename));
scontext = NULL;
fail = true;
}
@@ -889,7 +889,7 @@ out_mount_point (char const *filename, char *pformat, size_t prefix_len,
char *resolved = canonicalize_file_name (filename);
if (!resolved)
{
- error (0, errno, _("failed to canonicalize %s"), quote (filename));
+ error (0, errno, _("failed to canonicalize %s"), quoteaf (filename));
goto print_mount_point;
}
bp = find_bind_mount (resolved);
@@ -979,18 +979,18 @@ print_stat (char *pformat, size_t prefix_len, unsigned int m,
out_string (pformat, prefix_len, filename);
break;
case 'N':
- out_string (pformat, prefix_len, quote (filename));
+ out_string (pformat, prefix_len, quoteaf (filename));
if (S_ISLNK (statbuf->st_mode))
{
char *linkname = areadlink_with_size (filename, statbuf->st_size);
if (linkname == NULL)
{
error (0, errno, _("cannot read symbolic link %s"),
- quote (filename));
+ quoteaf (filename));
return true;
}
printf (" -> ");
- out_string (pformat, prefix_len, quote (linkname));
+ out_string (pformat, prefix_len, quoteaf (linkname));
free (linkname);
}
break;
@@ -1265,14 +1265,14 @@ do_statfs (char const *filename, char const *format)
if (STREQ (filename, "-"))
{
error (0, 0, _("using %s to denote standard input does not work"
- " in file system mode"), quote (filename));
+ " in file system mode"), quoteaf (filename));
return false;
}
if (STATFS (filename, &statfsbuf) != 0)
{
error (0, errno, _("cannot read file system information for %s"),
- quote (filename));
+ quoteaf (filename));
return false;
}
@@ -1303,7 +1303,7 @@ do_stat (char const *filename, char const *format,
? stat (filename, &statbuf)
: lstat (filename, &statbuf)) != 0)
{
- error (0, errno, _("cannot stat %s"), quote (filename));
+ error (0, errno, _("cannot stat %s"), quoteaf (filename));
return false;
}
diff --git a/src/stty.c b/src/stty.c
index 2ed3939d5..c509b643e 100644
--- a/src/stty.c
+++ b/src/stty.c
@@ -1169,17 +1169,17 @@ main (int argc, char **argv)
int fdflags;
device_name = file_name;
if (fd_reopen (STDIN_FILENO, device_name, O_RDONLY | O_NONBLOCK, 0) < 0)
- error (EXIT_FAILURE, errno, "%s", quote (device_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (device_name));
if ((fdflags = fcntl (STDIN_FILENO, F_GETFL)) == -1
|| fcntl (STDIN_FILENO, F_SETFL, fdflags & ~O_NONBLOCK) < 0)
error (EXIT_FAILURE, errno, _("%s: couldn't reset non-blocking mode"),
- quote (device_name));
+ quotef (device_name));
}
else
device_name = _("standard input");
if (tcgetattr (STDIN_FILENO, &mode))
- error (EXIT_FAILURE, errno, "%s", quote (device_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (device_name));
if (verbose_output || recoverable_output || noargs)
{
@@ -1281,7 +1281,7 @@ main (int argc, char **argv)
if (ioctl (STDIN_FILENO, TIOCEXT, &val) != 0)
{
error (EXIT_FAILURE, errno, _("%s: error setting %s"),
- quote_n (0, device_name), quote_n (1, arg));
+ quotef_n (0, device_name), quote_n (1, arg));
}
}
#endif
@@ -1362,7 +1362,7 @@ main (int argc, char **argv)
static struct termios new_mode;
if (tcsetattr (STDIN_FILENO, TCSADRAIN, &mode))
- error (EXIT_FAILURE, errno, "%s", quote (device_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (device_name));
/* POSIX (according to Zlotnick's book) tcsetattr returns zero if
it performs *any* of the requested operations. This means it
@@ -1372,7 +1372,7 @@ main (int argc, char **argv)
compare them to the requested ones. */
if (tcgetattr (STDIN_FILENO, &new_mode))
- error (EXIT_FAILURE, errno, "%s", quote (device_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (device_name));
/* Normally, one shouldn't use memcmp to compare structures that
may have 'holes' containing uninitialized data, but we have been
@@ -1399,7 +1399,7 @@ main (int argc, char **argv)
{
error (EXIT_FAILURE, 0,
_("%s: unable to perform all requested operations"),
- quote (device_name));
+ quotef (device_name));
#ifdef TESTING
{
size_t i;
@@ -1679,7 +1679,7 @@ set_window_size (int rows, int cols, char const *device_name)
if (get_win_size (STDIN_FILENO, &win))
{
if (errno != EINVAL)
- error (EXIT_FAILURE, errno, "%s", quote (device_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (device_name));
memset (&win, 0, sizeof (win));
}
@@ -1721,16 +1721,16 @@ set_window_size (int rows, int cols, char const *device_name)
win.ws_col = 1;
if (ioctl (STDIN_FILENO, TIOCSWINSZ, (char *) &win))
- error (EXIT_FAILURE, errno, "%s", quote (device_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (device_name));
if (ioctl (STDIN_FILENO, TIOCSSIZE, (char *) &ttysz))
- error (EXIT_FAILURE, errno, "%s", quote (device_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (device_name));
return;
}
# endif
if (ioctl (STDIN_FILENO, TIOCSWINSZ, (char *) &win))
- error (EXIT_FAILURE, errno, "%s", quote (device_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (device_name));
}
static void
@@ -1741,11 +1741,11 @@ display_window_size (bool fancy, char const *device_name)
if (get_win_size (STDIN_FILENO, &win))
{
if (errno != EINVAL)
- error (EXIT_FAILURE, errno, "%s", quote (device_name));
+ error (EXIT_FAILURE, errno, "%s", quotef (device_name));
if (!fancy)
error (EXIT_FAILURE, 0,
_("%s: no size information for this device"),
- quote (device_name));
+ quotef (device_name));
}
else
{
diff --git a/src/sum.c b/src/sum.c
index 0c74779cc..407cb5d5b 100644
--- a/src/sum.c
+++ b/src/sum.c
@@ -27,7 +27,6 @@
#include "error.h"
#include "fadvise.h"
#include "human.h"
-#include "quote.h"
#include "safe-read.h"
#include "xfreopen.h"
@@ -106,7 +105,7 @@ bsd_sum_file (const char *file, int print_name)
fp = fopen (file, (O_BINARY ? "rb" : "r"));
if (fp == NULL)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
}
@@ -123,7 +122,7 @@ bsd_sum_file (const char *file, int print_name)
if (ferror (fp))
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
if (!is_stdin)
fclose (fp);
return false;
@@ -131,7 +130,7 @@ bsd_sum_file (const char *file, int print_name)
if (!is_stdin && fclose (fp) != 0)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
@@ -176,7 +175,7 @@ sysv_sum_file (const char *file, int print_name)
fd = open (file, O_RDONLY | O_BINARY);
if (fd == -1)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
}
@@ -191,7 +190,7 @@ sysv_sum_file (const char *file, int print_name)
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
if (!is_stdin)
close (fd);
return false;
@@ -204,7 +203,7 @@ sysv_sum_file (const char *file, int print_name)
if (!is_stdin && close (fd) != 0)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
@@ -271,6 +270,6 @@ main (int argc, char **argv)
ok &= sum_func (argv[optind], files_given);
if (have_read_stdin && fclose (stdin) == EOF)
- error (EXIT_FAILURE, errno, "%s", quote ("-"));
+ error (EXIT_FAILURE, errno, "%s", quotef ("-"));
return ok ? EXIT_SUCCESS : EXIT_FAILURE;
}
diff --git a/src/sync.c b/src/sync.c
index 5e1dbb8c6..bae64831b 100644
--- a/src/sync.c
+++ b/src/sync.c
@@ -24,7 +24,6 @@
#include "system.h"
#include "error.h"
-#include "quote.h"
/* The official name of this program (e.g., no 'g' prefix). */
#define PROGRAM_NAME "sync"
@@ -111,7 +110,7 @@ sync_arg (enum sync_mode mode, char const *file)
if (open_flags != (O_WRONLY | O_NONBLOCK))
fd = open (file, O_WRONLY | O_NONBLOCK);
if (fd < 0)
- error (0, rd_errno, _("error opening %s"), quote (file));
+ error (0, rd_errno, _("error opening %s"), quoteaf (file));
return false;
}
@@ -121,7 +120,8 @@ sync_arg (enum sync_mode mode, char const *file)
if (fdflags == -1
|| fcntl (fd, F_SETFL, fdflags & ~O_NONBLOCK) < 0)
{
- error (0, errno, _("couldn't reset non-blocking mode %s"), quote (file));
+ error (0, errno, _("couldn't reset non-blocking mode %s"),
+ quoteaf (file));
ret = false;
}
@@ -151,14 +151,14 @@ sync_arg (enum sync_mode mode, char const *file)
if (sync_status < 0)
{
- error (0, errno, _("error syncing %s"), quote (file));
+ error (0, errno, _("error syncing %s"), quoteaf (file));
ret = false;
}
}
if (close (fd) < 0)
{
- error (0, errno, _("failed to close %s"), quote (file));
+ error (0, errno, _("failed to close %s"), quoteaf (file));
ret = false;
}
diff --git a/src/system.h b/src/system.h
index 1cd6bdb44..ded187f83 100644
--- a/src/system.h
+++ b/src/system.h
@@ -693,7 +693,7 @@ WARNING: Circular directory structure.\n\
This almost certainly means that you have a corrupted file system.\n\
NOTIFY YOUR SYSTEM MANAGER.\n\
The following directory is part of the cycle:\n %s\n"), \
- quote (file_name)); \
+ quotef (file_name)); \
} \
while (0)
@@ -731,3 +731,22 @@ is_ENOTSUP (int err)
{
return err == EOPNOTSUPP || (ENOTSUP != EOPNOTSUPP && err == ENOTSUP);
}
+
+
+/* How coreutils quotes filenames, to minimize use of outer quotes,
+ but also provide better support for copy and paste when used. */
+#include "quotearg.h"
+
+/* Use these to shell quote only when necessary,
+ when the quoted item is already delimited with colons. */
+#define quotef(arg) \
+ quotearg_n_style_colon (0, shell_escape_quoting_style, arg)
+#define quotef_n(n, arg) \
+ quotearg_n_style_colon (n, shell_escape_quoting_style, arg)
+
+/* Use these when there are spaces around the file name,
+ in the error message. */
+#define quoteaf(arg) \
+ quotearg_style (shell_escape_always_quoting_style, arg)
+#define quoteaf_n(n, arg) \
+ quotearg_n_style (n, shell_escape_always_quoting_style, arg)
diff --git a/src/tac.c b/src/tac.c
index a260b7bad..e85ac1253 100644
--- a/src/tac.c
+++ b/src/tac.c
@@ -45,7 +45,6 @@ tac -r -s '.\|
#include "error.h"
#include "filenamecat.h"
-#include "quote.h"
#include "safe-read.h"
#include "stdlib--.h"
#include "xfreopen.h"
@@ -220,7 +219,7 @@ tac_seekable (int input_fd, const char *file, off_t file_pos)
{
file_pos -= remainder;
if (lseek (input_fd, file_pos, SEEK_SET) < 0)
- error (0, errno, _("%s: seek failed"), quote (file));
+ error (0, errno, _("%s: seek failed"), quotef (file));
}
/* Scan backward, looking for end of file. This caters to proc-like
@@ -230,7 +229,7 @@ tac_seekable (int input_fd, const char *file, off_t file_pos)
{
off_t rsize = read_size;
if (lseek (input_fd, -rsize, SEEK_CUR) < 0)
- error (0, errno, _("%s: seek failed"), quote (file));
+ error (0, errno, _("%s: seek failed"), quotef (file));
file_pos -= read_size;
}
@@ -248,7 +247,7 @@ tac_seekable (int input_fd, const char *file, off_t file_pos)
if (saved_record_size == SAFE_READ_ERROR)
{
- error (0, errno, _("%s: read error"), quote (file));
+ error (0, errno, _("%s: read error"), quotef (file));
return false;
}
@@ -340,7 +339,7 @@ tac_seekable (int input_fd, const char *file, off_t file_pos)
file_pos = 0;
}
if (lseek (input_fd, file_pos, SEEK_SET) < 0)
- error (0, errno, _("%s: seek failed"), quote (file));
+ error (0, errno, _("%s: seek failed"), quotef (file));
/* Shift the pending record data right to make room for the new.
The source and destination regions probably overlap. */
@@ -354,7 +353,7 @@ tac_seekable (int input_fd, const char *file, off_t file_pos)
if (safe_read (input_fd, G_buffer, read_size) != read_size)
{
- error (0, errno, _("%s: read error"), quote (file));
+ error (0, errno, _("%s: read error"), quotef (file));
return false;
}
}
@@ -456,7 +455,7 @@ temp_stream (FILE **fp, char **file_name)
if (fd < 0)
{
error (0, errno, _("failed to create temporary file in %s"),
- quote (tempdir));
+ quoteaf (tempdir));
goto Reset;
}
@@ -464,7 +463,7 @@ temp_stream (FILE **fp, char **file_name)
if (! tmp_fp)
{
error (0, errno, _("failed to open %s for writing"),
- quote (tempfile));
+ quoteaf (tempfile));
close (fd);
unlink (tempfile);
Reset:
@@ -481,7 +480,7 @@ temp_stream (FILE **fp, char **file_name)
|| ftruncate (fileno (tmp_fp), 0) < 0)
{
error (0, errno, _("failed to rewind stream for %s"),
- quote (tempfile));
+ quoteaf (tempfile));
return false;
}
}
@@ -511,13 +510,13 @@ copy_to_temp (FILE **g_tmp, char **g_tempfile, int input_fd, char const *file)
break;
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, _("%s: read error"), quote (file));
+ error (0, errno, _("%s: read error"), quotef (file));
goto Fail;
}
if (fwrite (G_buffer, 1, bytes_read, fp) != bytes_read)
{
- error (0, errno, _("%s: write error"), quote (file_name));
+ error (0, errno, _("%s: write error"), quotef (file_name));
goto Fail;
}
@@ -529,7 +528,7 @@ copy_to_temp (FILE **g_tmp, char **g_tempfile, int input_fd, char const *file)
if (fflush (fp) != 0)
{
- error (0, errno, _("%s: write error"), quote (file_name));
+ error (0, errno, _("%s: write error"), quotef (file_name));
goto Fail;
}
@@ -584,7 +583,7 @@ tac_file (const char *filename)
if (fd < 0)
{
error (0, errno, _("failed to open %s for reading"),
- quote (filename));
+ quoteaf (filename));
return false;
}
}
@@ -597,7 +596,7 @@ tac_file (const char *filename)
if (!is_stdin && close (fd) != 0)
{
- error (0, errno, _("%s: read error"), quote (filename));
+ error (0, errno, _("%s: read error"), quotef (filename));
ok = false;
}
return ok;
diff --git a/src/tail.c b/src/tail.c
index 6c5dd3a9d..223c8f839 100644
--- a/src/tail.c
+++ b/src/tail.c
@@ -360,7 +360,7 @@ close_fd (int fd, const char *filename)
{
if (fd != -1 && fd != STDIN_FILENO && close (fd))
{
- error (0, errno, _("closing %s (fd=%d)"), quote (filename), fd);
+ error (0, errno, _("closing %s (fd=%d)"), quoteaf (filename), fd);
}
}
@@ -383,7 +383,7 @@ xwrite_stdout (char const *buffer, size_t n_bytes)
{
clearerr (stdout); /* To avoid redundant close_stdout diagnostic. */
error (EXIT_FAILURE, errno, _("error writing %s"),
- quote ("standard output"));
+ quoteaf ("standard output"));
}
}
@@ -408,7 +408,7 @@ dump_remainder (const char *pretty_filename, int fd, uintmax_t n_bytes)
{
if (errno != EAGAIN)
error (EXIT_FAILURE, errno, _("error reading %s"),
- quote (pretty_filename));
+ quoteaf (pretty_filename));
break;
}
if (bytes_read == 0)
@@ -446,15 +446,15 @@ xlseek (int fd, off_t offset, int whence, char const *filename)
{
case SEEK_SET:
error (0, errno, _("%s: cannot seek to offset %s"),
- quote (filename), s);
+ quotef (filename), s);
break;
case SEEK_CUR:
error (0, errno, _("%s: cannot seek to relative offset %s"),
- quote (filename), s);
+ quotef (filename), s);
break;
case SEEK_END:
error (0, errno, _("%s: cannot seek to end-relative offset %s"),
- quote (filename), s);
+ quotef (filename), s);
break;
default:
abort ();
@@ -495,7 +495,7 @@ file_lines (const char *pretty_filename, int fd, uintmax_t n_lines,
bytes_read = safe_read (fd, buffer, bytes_read);
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, _("error reading %s"), quote (pretty_filename));
+ error (0, errno, _("error reading %s"), quoteaf (pretty_filename));
return false;
}
*read_pos = pos + bytes_read;
@@ -544,7 +544,7 @@ file_lines (const char *pretty_filename, int fd, uintmax_t n_lines,
bytes_read = safe_read (fd, buffer, BUFSIZ);
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, _("error reading %s"), quote (pretty_filename));
+ error (0, errno, _("error reading %s"), quoteaf (pretty_filename));
return false;
}
@@ -637,7 +637,7 @@ pipe_lines (const char *pretty_filename, int fd, uintmax_t n_lines,
if (n_read == SAFE_READ_ERROR)
{
- error (0, errno, _("error reading %s"), quote (pretty_filename));
+ error (0, errno, _("error reading %s"), quoteaf (pretty_filename));
ok = false;
goto free_lbuffers;
}
@@ -765,7 +765,7 @@ pipe_bytes (const char *pretty_filename, int fd, uintmax_t n_bytes,
if (n_read == SAFE_READ_ERROR)
{
- error (0, errno, _("error reading %s"), quote (pretty_filename));
+ error (0, errno, _("error reading %s"), quoteaf (pretty_filename));
ok = false;
goto free_cbuffers;
}
@@ -813,7 +813,7 @@ start_bytes (const char *pretty_filename, int fd, uintmax_t n_bytes,
return -1;
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, _("error reading %s"), quote (pretty_filename));
+ error (0, errno, _("error reading %s"), quoteaf (pretty_filename));
return 1;
}
*read_pos += bytes_read;
@@ -850,7 +850,7 @@ start_lines (const char *pretty_filename, int fd, uintmax_t n_lines,
return -1;
if (bytes_read == SAFE_READ_ERROR) /* error */
{
- error (0, errno, _("error reading %s"), quote (pretty_filename));
+ error (0, errno, _("error reading %s"), quoteaf (pretty_filename));
return 1;
}
@@ -891,7 +891,7 @@ fremote (int fd, const char *name)
is open on a pipe. Treat that like a remote file. */
if (errno != ENOSYS)
error (0, errno, _("cannot determine location of %s. "
- "reverting to polling"), quote (name));
+ "reverting to polling"), quoteaf (name));
}
else
{
@@ -952,7 +952,7 @@ recheck (struct File_spec *f, bool blocking)
f->ignore = true;
error (0, 0, _("%s has been replaced with a symbolic link. "
- "giving up on this name"), quote (pretty_name (f)));
+ "giving up on this name"), quoteaf (pretty_name (f)));
}
else if (fd == -1 || fstat (fd, &new_stats) < 0)
{
@@ -967,7 +967,7 @@ recheck (struct File_spec *f, bool blocking)
be seen to be the same file (dev/ino). Otherwise, tail prints
the entire contents of the file when it becomes readable. */
error (0, f->errnum, _("%s has become inaccessible"),
- quote (pretty_name (f)));
+ quoteaf (pretty_name (f)));
}
else
{
@@ -975,7 +975,7 @@ recheck (struct File_spec *f, bool blocking)
}
}
else if (prev_errnum != errno)
- error (0, errno, "%s", quote (pretty_name (f)));
+ error (0, errno, "%s", quotef (pretty_name (f)));
}
else if (!IS_TAILABLE_FILE_TYPE (new_stats.st_mode))
{
@@ -983,7 +983,7 @@ recheck (struct File_spec *f, bool blocking)
f->errnum = -1;
error (0, 0, _("%s has been replaced with an untailable file;\
giving up on this name"),
- quote (pretty_name (f)));
+ quoteaf (pretty_name (f)));
f->ignore = true;
}
else if (!disable_inotify && fremote (fd, pretty_name (f)))
@@ -991,7 +991,7 @@ recheck (struct File_spec *f, bool blocking)
ok = false;
f->errnum = -1;
error (0, 0, _("%s has been replaced with a remote file. "
- "giving up on this name"), quote (pretty_name (f)));
+ "giving up on this name"), quoteaf (pretty_name (f)));
f->ignore = true;
f->remote = true;
}
@@ -1011,7 +1011,7 @@ recheck (struct File_spec *f, bool blocking)
{
new_file = true;
assert (f->fd == -1);
- error (0, 0, _("%s has become accessible"), quote (pretty_name (f)));
+ error (0, 0, _("%s has become accessible"), quoteaf (pretty_name (f)));
}
else if (f->fd == -1)
{
@@ -1024,7 +1024,7 @@ recheck (struct File_spec *f, bool blocking)
error (0, 0,
_("%s has appeared; following new file"),
- quote (pretty_name (f)));
+ quoteaf (pretty_name (f)));
}
else if (f->ino != new_stats.st_ino || f->dev != new_stats.st_dev)
{
@@ -1034,7 +1034,7 @@ recheck (struct File_spec *f, bool blocking)
error (0, 0,
_("%s has been replaced; following new file"),
- quote (pretty_name (f)));
+ quoteaf (pretty_name (f)));
/* Close the old one. */
close_fd (f->fd, pretty_name (f));
@@ -1151,7 +1151,7 @@ tail_forever (struct File_spec *f, size_t n_files, double sleep_interval)
else
error (EXIT_FAILURE, errno,
_("%s: cannot change nonblocking mode"),
- quote (name));
+ quotef (name));
}
else
f[i].blocking = blocking;
@@ -1163,7 +1163,7 @@ tail_forever (struct File_spec *f, size_t n_files, double sleep_interval)
{
f[i].fd = -1;
f[i].errnum = errno;
- error (0, errno, "%s", quote (name));
+ error (0, errno, "%s", quotef (name));
close (fd); /* ignore failure */
continue;
}
@@ -1196,7 +1196,7 @@ tail_forever (struct File_spec *f, size_t n_files, double sleep_interval)
(in which case we ignore new data <= size). */
if (S_ISREG (mode) && stats.st_size < f[i].size)
{
- error (0, 0, _("%s: file truncated"), quote (name));
+ error (0, 0, _("%s: file truncated"), quotef (name));
/* Assume the file was truncated to 0,
and therefore output all "new" data. */
xlseek (fd, 0, SEEK_SET, name);
@@ -1338,7 +1338,7 @@ check_fspec (struct File_spec *fspec, struct File_spec **prev_fspec)
separate events for truncate() and write(). */
if (S_ISREG (fspec->mode) && stats.st_size < fspec->size)
{
- error (0, 0, _("%s: file truncated"), quote (name));
+ error (0, 0, _("%s: file truncated"), quotef (name));
xlseek (fspec->fd, 0, SEEK_SET, name);
fspec->size = 0;
}
@@ -1433,7 +1433,7 @@ tail_forever_inotify (int wd, struct File_spec *f, size_t n_files,
{
if (errno != ENOSPC) /* suppress confusing error. */
error (0, errno, _("cannot watch parent directory of %s"),
- quote (f[i].name));
+ quoteaf (f[i].name));
else
error (0, 0, _("inotify resources exhausted"));
found_unwatchable_dir = true;
@@ -1456,7 +1456,7 @@ tail_forever_inotify (int wd, struct File_spec *f, size_t n_files,
break;
}
else if (errno != f[i].errnum)
- error (0, errno, _("cannot watch %s"), quote (f[i].name));
+ error (0, errno, _("cannot watch %s"), quoteaf (f[i].name));
continue;
}
@@ -1506,7 +1506,7 @@ tail_forever_inotify (int wd, struct File_spec *f, size_t n_files,
&& (f[i].dev != stats.st_dev || f[i].ino != stats.st_ino))
{
error (0, errno, _("%s was replaced"),
- quote (pretty_name (&(f[i]))));
+ quoteaf (pretty_name (&(f[i]))));
hash_free (wd_to_name);
errno = 0;
@@ -1635,7 +1635,7 @@ tail_forever_inotify (int wd, struct File_spec *f, size_t n_files,
else
{
/* Can get ENOENT for a dangling symlink for example. */
- error (0, errno, _("cannot watch %s"), quote (f[j].name));
+ error (0, errno, _("cannot watch %s"), quoteaf (f[j].name));
}
/* We'll continue below after removing the existing watch. */
}
@@ -1726,7 +1726,7 @@ tail_bytes (const char *pretty_filename, int fd, uintmax_t n_bytes,
if (fstat (fd, &stats))
{
- error (0, errno, _("cannot fstat %s"), quote (pretty_filename));
+ error (0, errno, _("cannot fstat %s"), quoteaf (pretty_filename));
return false;
}
@@ -1782,7 +1782,7 @@ tail_lines (const char *pretty_filename, int fd, uintmax_t n_lines,
if (fstat (fd, &stats))
{
- error (0, errno, _("cannot fstat %s"), quote (pretty_filename));
+ error (0, errno, _("cannot fstat %s"), quoteaf (pretty_filename));
return false;
}
@@ -1881,7 +1881,7 @@ tail_file (struct File_spec *f, uintmax_t n_units)
f->dev = 0;
}
error (0, errno, _("cannot open %s for reading"),
- quote (pretty_name (f)));
+ quoteaf (pretty_name (f)));
ok = false;
}
else
@@ -1906,13 +1906,14 @@ tail_file (struct File_spec *f, uintmax_t n_units)
{
ok = false;
f->errnum = errno;
- error (0, errno, _("error reading %s"), quote (pretty_name (f)));
+ error (0, errno, _("error reading %s"),
+ quoteaf (pretty_name (f)));
}
else if (!IS_TAILABLE_FILE_TYPE (stats.st_mode))
{
error (0, 0, _("%s: cannot follow end of this type of file;\
giving up on this name"),
- quote (pretty_name (f)));
+ quotef (pretty_name (f)));
ok = false;
f->errnum = -1;
f->ignore = true;
@@ -1936,7 +1937,8 @@ tail_file (struct File_spec *f, uintmax_t n_units)
{
if (!is_stdin && close (fd))
{
- error (0, errno, _("error reading %s"), quote (pretty_name (f)));
+ error (0, errno, _("error reading %s"),
+ quoteaf (pretty_name (f)));
ok = false;
}
}
@@ -2258,7 +2260,7 @@ main (int argc, char **argv)
/* When following by name, there must be a name. */
if (found_hyphen && follow_mode == Follow_name)
- error (EXIT_FAILURE, 0, _("cannot follow %s by name"), quote ("-"));
+ error (EXIT_FAILURE, 0, _("cannot follow %s by name"), quoteaf ("-"));
/* When following forever, warn if any file is '-'.
This is only a warning, since tail's output (before a failing seek,
diff --git a/src/tee.c b/src/tee.c
index 37105c3ca..ae1bb30ba 100644
--- a/src/tee.c
+++ b/src/tee.c
@@ -25,7 +25,6 @@
#include "argmatch.h"
#include "error.h"
#include "fadvise.h"
-#include "quote.h"
#include "stdio--.h"
#include "xfreopen.h"
@@ -219,7 +218,7 @@ tee_files (int nfiles, char **files)
{
error (output_error == output_error_exit
|| output_error == output_error_exit_nopipe,
- errno, "%s", quote (files[i]));
+ errno, "%s", quotef (files[i]));
ok = false;
}
else
@@ -252,7 +251,7 @@ tee_files (int nfiles, char **files)
{
error (output_error == output_error_exit
|| output_error == output_error_exit_nopipe,
- w_errno, "%s", quote (files[i]));
+ w_errno, "%s", quotef (files[i]));
}
descriptors[i] = NULL;
if (fail)
@@ -271,7 +270,7 @@ tee_files (int nfiles, char **files)
for (i = 1; i <= nfiles; i++)
if (descriptors[i] && fclose (descriptors[i]) != 0)
{
- error (0, errno, "%s", quote (files[i]));
+ error (0, errno, "%s", quotef (files[i]));
ok = false;
}
diff --git a/src/touch.c b/src/touch.c
index 628610a81..7408321aa 100644
--- a/src/touch.c
+++ b/src/touch.c
@@ -169,7 +169,7 @@ touch (const char *file)
{
if (close (STDIN_FILENO) != 0)
{
- error (0, errno, _("failed to close %s"), quote (file));
+ error (0, errno, _("failed to close %s"), quoteaf (file));
return false;
}
}
@@ -188,13 +188,13 @@ touch (const char *file)
- the file does not exist, but the parent directory is unwritable
- the file exists, but it isn't writable
I think it's not worth trying to distinguish them. */
- error (0, open_errno, _("cannot touch %s"), quote (file));
+ error (0, open_errno, _("cannot touch %s"), quoteaf (file));
}
else
{
if (no_create && errno == ENOENT)
return true;
- error (0, errno, _("setting times of %s"), quote (file));
+ error (0, errno, _("setting times of %s"), quoteaf (file));
}
return false;
}
@@ -344,7 +344,7 @@ main (int argc, char **argv)
if (no_dereference ? lstat (ref_file, &ref_stats)
: stat (ref_file, &ref_stats))
error (EXIT_FAILURE, errno,
- _("failed to get attributes of %s"), quote (ref_file));
+ _("failed to get attributes of %s"), quoteaf (ref_file));
newtime[0] = get_stat_atime (&ref_stats);
newtime[1] = get_stat_mtime (&ref_stats);
date_set = true;
diff --git a/src/truncate.c b/src/truncate.c
index c40cd6113..f49efc5e2 100644
--- a/src/truncate.c
+++ b/src/truncate.c
@@ -110,7 +110,7 @@ do_ftruncate (int fd, char const *fname, off_t ssize, off_t rsize,
if ((block_mode || (rel_mode && rsize < 0)) && fstat (fd, &sb) != 0)
{
- error (0, errno, _("cannot fstat %s"), quote (fname));
+ error (0, errno, _("cannot fstat %s"), quoteaf (fname));
return false;
}
if (block_mode)
@@ -122,7 +122,7 @@ do_ftruncate (int fd, char const *fname, off_t ssize, off_t rsize,
_("overflow in %" PRIdMAX
" * %" PRIdMAX " byte blocks for file %s"),
(intmax_t) ssize, (intmax_t) blksize,
- quote (fname));
+ quoteaf (fname));
return false;
}
ssize *= blksize;
@@ -144,7 +144,7 @@ do_ftruncate (int fd, char const *fname, off_t ssize, off_t rsize,
/* Sanity check. Overflow is the only reason I can think
this would ever go negative. */
error (0, 0, _("%s has unusable, apparently negative size"),
- quote (fname));
+ quoteaf (fname));
return false;
}
}
@@ -154,7 +154,7 @@ do_ftruncate (int fd, char const *fname, off_t ssize, off_t rsize,
if (file_size < 0)
{
error (0, errno, _("cannot get the size of %s"),
- quote (fname));
+ quoteaf (fname));
return false;
}
}
@@ -176,7 +176,7 @@ do_ftruncate (int fd, char const *fname, off_t ssize, off_t rsize,
if (overflow > OFF_T_MAX)
{
error (0, 0, _("overflow rounding up size of file %s"),
- quote (fname));
+ quoteaf (fname));
return false;
}
nsize = overflow;
@@ -186,7 +186,7 @@ do_ftruncate (int fd, char const *fname, off_t ssize, off_t rsize,
if (ssize > OFF_T_MAX - (off_t)fsize)
{
error (0, 0, _("overflow extending size of file %s"),
- quote (fname));
+ quoteaf (fname));
return false;
}
nsize = fsize + ssize;
@@ -200,7 +200,7 @@ do_ftruncate (int fd, char const *fname, off_t ssize, off_t rsize,
if (ftruncate (fd, nsize) == -1) /* note updates mtime & ctime */
{
error (0, errno,
- _("failed to truncate %s at %" PRIdMAX " bytes"), quote (fname),
+ _("failed to truncate %s at %" PRIdMAX " bytes"), quoteaf (fname),
(intmax_t) nsize);
return false;
}
@@ -334,7 +334,7 @@ main (int argc, char **argv)
struct stat sb;
off_t file_size = -1;
if (stat (ref_file, &sb) != 0)
- error (EXIT_FAILURE, errno, _("cannot stat %s"), quote (ref_file));
+ error (EXIT_FAILURE, errno, _("cannot stat %s"), quoteaf (ref_file));
if (usable_st_size (&sb))
file_size = sb.st_size;
else
@@ -356,7 +356,7 @@ main (int argc, char **argv)
}
if (file_size < 0)
error (EXIT_FAILURE, errno, _("cannot get the size of %s"),
- quote (ref_file));
+ quoteaf (ref_file));
if (!got_size)
size = file_size;
else
@@ -376,7 +376,7 @@ main (int argc, char **argv)
if (!(no_create && errno == ENOENT))
{
error (0, errno, _("cannot open %s for writing"),
- quote (fname));
+ quoteaf (fname));
errors = true;
}
continue;
@@ -388,7 +388,7 @@ main (int argc, char **argv)
errors |= !do_ftruncate (fd, fname, size, rsize, rel_mode);
if (close (fd) != 0)
{
- error (0, errno, _("failed to close %s"), quote (fname));
+ error (0, errno, _("failed to close %s"), quoteaf (fname));
errors = true;
}
}
diff --git a/src/tsort.c b/src/tsort.c
index dc9bed5e9..9a8498001 100644
--- a/src/tsort.c
+++ b/src/tsort.c
@@ -30,9 +30,9 @@
#include "long-options.h"
#include "error.h"
#include "fadvise.h"
-#include "quote.h"
#include "readtokens.h"
#include "stdio--.h"
+#include "quote.h"
/* The official name of this program (e.g., no 'g' prefix). */
#define PROGRAM_NAME "tsort"
@@ -445,7 +445,7 @@ tsort (const char *file)
root = new_item (NULL);
if (!is_stdin && ! freopen (file, "r", stdin))
- error (EXIT_FAILURE, errno, "%s", quote (file));
+ error (EXIT_FAILURE, errno, "%s", quotef (file));
fadvise (stdin, FADVISE_SEQUENTIAL);
@@ -473,7 +473,7 @@ tsort (const char *file)
if (k != NULL)
error (EXIT_FAILURE, 0, _("%s: input contains an odd number of tokens"),
- quote (file));
+ quotef (file));
/* T1. Initialize (N <- n). */
walk_tree (root, count_items);
@@ -518,7 +518,7 @@ tsort (const char *file)
if (n_strings > 0)
{
/* The input contains a loop. */
- error (0, 0, _("%s: input contains a loop:"), quote (file));
+ error (0, 0, _("%s: input contains a loop:"), quotef (file));
ok = false;
/* Print the loop and remove a relation to break it. */
@@ -532,7 +532,7 @@ tsort (const char *file)
if (fclose (stdin) != 0)
error (EXIT_FAILURE, errno, "%s",
- is_stdin ? _("standard input") : quote (file));
+ is_stdin ? _("standard input") : quotef (file));
return ok;
}
diff --git a/src/unexpand.c b/src/unexpand.c
index 14ff84f2b..ec5fb81d8 100644
--- a/src/unexpand.c
+++ b/src/unexpand.c
@@ -243,14 +243,14 @@ next_file (FILE *fp)
{
if (ferror (fp))
{
- error (0, errno, "%s", quote (prev_file));
+ error (0, errno, "%s", quotef (prev_file));
exit_status = EXIT_FAILURE;
}
if (STREQ (prev_file, "-"))
clearerr (fp); /* Also clear EOF. */
else if (fclose (fp) != 0)
{
- error (0, errno, "%s", quote (prev_file));
+ error (0, errno, "%s", quotef (prev_file));
exit_status = EXIT_FAILURE;
}
}
@@ -270,7 +270,7 @@ next_file (FILE *fp)
fadvise (fp, FADVISE_SEQUENTIAL);
return fp;
}
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
exit_status = EXIT_FAILURE;
}
return NULL;
diff --git a/src/uniq.c b/src/uniq.c
index c85be6ee8..79eb40b7f 100644
--- a/src/uniq.c
+++ b/src/uniq.c
@@ -28,11 +28,11 @@
#include "fadvise.h"
#include "hard-locale.h"
#include "posixver.h"
-#include "quote.h"
#include "stdio--.h"
#include "xmemcoll.h"
#include "xstrtol.h"
#include "memcasecmp.h"
+#include "quote.h"
/* The official name of this program (e.g., no 'g' prefix). */
#define PROGRAM_NAME "uniq"
@@ -327,9 +327,9 @@ check_file (const char *infile, const char *outfile, char delimiter)
struct linebuffer *thisline, *prevline;
if (! (STREQ (infile, "-") || freopen (infile, "r", stdin)))
- error (EXIT_FAILURE, errno, "%s", quote (infile));
+ error (EXIT_FAILURE, errno, "%s", quotef (infile));
if (! (STREQ (outfile, "-") || freopen (outfile, "w", stdout)))
- error (EXIT_FAILURE, errno, "%s", quote (outfile));
+ error (EXIT_FAILURE, errno, "%s", quotef (outfile));
fadvise (stdin, FADVISE_SEQUENTIAL);
@@ -462,7 +462,7 @@ check_file (const char *infile, const char *outfile, char delimiter)
closefiles:
if (ferror (stdin) || fclose (stdin) != 0)
- error (EXIT_FAILURE, 0, _("error reading %s"), quote (infile));
+ error (EXIT_FAILURE, 0, _("error reading %s"), quoteaf (infile));
/* stdout is handled via the atexit-invoked close_stdout function. */
diff --git a/src/unlink.c b/src/unlink.c
index 0b26fd4e1..7fba45ff0 100644
--- a/src/unlink.c
+++ b/src/unlink.c
@@ -83,7 +83,7 @@ main (int argc, char **argv)
}
if (unlink (argv[optind]) != 0)
- error (EXIT_FAILURE, errno, _("cannot unlink %s"), quote (argv[optind]));
+ error (EXIT_FAILURE, errno, _("cannot unlink %s"), quoteaf (argv[optind]));
return EXIT_SUCCESS;
}
diff --git a/src/uptime.c b/src/uptime.c
index b35fd0742..3f15b6b5f 100644
--- a/src/uptime.c
+++ b/src/uptime.c
@@ -180,7 +180,7 @@ uptime (const char *filename, int options)
#if HAVE_UTMPX_H || HAVE_UTMP_H
if (read_utmp (filename, &n_users, &utmp_buf, options) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (filename));
+ error (EXIT_FAILURE, errno, "%s", quotef (filename));
#endif
print_uptime (n_users, utmp_buf);
diff --git a/src/users.c b/src/users.c
index 2a66101f9..6f943891a 100644
--- a/src/users.c
+++ b/src/users.c
@@ -88,7 +88,7 @@ users (const char *filename, int options)
STRUCT_UTMP *utmp_buf;
if (read_utmp (filename, &n_users, &utmp_buf, options) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (filename));
+ error (EXIT_FAILURE, errno, "%s", quotef (filename));
list_entries_users (n_users, utmp_buf);
diff --git a/src/wc.c b/src/wc.c
index 30a08926f..33b5ba4dd 100644
--- a/src/wc.c
+++ b/src/wc.c
@@ -32,7 +32,6 @@
#include "fadvise.h"
#include "mbchar.h"
#include "physmem.h"
-#include "quote.h"
#include "readtokens0.h"
#include "safe-read.h"
#include "stat-size.h"
@@ -258,7 +257,7 @@ wc (int fd, char const *file_x, struct fstatus *fstatus, off_t current_pos)
{
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
ok = false;
break;
}
@@ -274,7 +273,7 @@ wc (int fd, char const *file_x, struct fstatus *fstatus, off_t current_pos)
{
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
ok = false;
break;
}
@@ -342,7 +341,7 @@ wc (int fd, char const *file_x, struct fstatus *fstatus, off_t current_pos)
# endif
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
ok = false;
break;
}
@@ -463,7 +462,7 @@ wc (int fd, char const *file_x, struct fstatus *fstatus, off_t current_pos)
const char *p = buf;
if (bytes_read == SAFE_READ_ERROR)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
ok = false;
break;
}
@@ -540,7 +539,7 @@ wc_file (char const *file, struct fstatus *fstatus)
int fd = open (file, O_RDONLY | O_BINARY);
if (fd == -1)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
else
@@ -548,7 +547,7 @@ wc_file (char const *file, struct fstatus *fstatus)
bool ok = wc (fd, file, fstatus, 0);
if (close (fd) != 0)
{
- error (0, errno, "%s", quote (file));
+ error (0, errno, "%s", quotef (file));
return false;
}
return ok;
@@ -696,7 +695,7 @@ main (int argc, char **argv)
on the command-line. */
if (optind < argc)
{
- error (0, 0, _("extra operand %s"), quote (argv[optind]));
+ error (0, 0, _("extra operand %s"), quoteaf (argv[optind]));
fprintf (stderr, "%s\n",
_("file operands cannot be combined with --files0-from"));
usage (EXIT_FAILURE);
@@ -709,7 +708,7 @@ main (int argc, char **argv)
stream = fopen (files_from, "r");
if (stream == NULL)
error (EXIT_FAILURE, errno, _("cannot open %s for reading"),
- quote (files_from));
+ quoteaf (files_from));
}
/* Read the file list into RAM if we can detect its size and that
@@ -723,7 +722,7 @@ main (int argc, char **argv)
readtokens0_init (&tok);
if (! readtokens0 (stream, &tok) || fclose (stream) != 0)
error (EXIT_FAILURE, 0, _("cannot read file names from %s"),
- quote (files_from));
+ quoteaf (files_from));
files = tok.tok;
nfiles = tok.n_tok;
ai = argv_iter_init_argv (files);
@@ -764,7 +763,7 @@ main (int argc, char **argv)
goto argv_iter_done;
case AI_ERR_READ:
error (0, errno, _("%s: read error"),
- quote (files_from));
+ quotef (files_from));
ok = false;
goto argv_iter_done;
case AI_ERR_MEM:
@@ -779,7 +778,7 @@ main (int argc, char **argv)
printf - | wc --files0-from=- */
error (0, 0, _("when reading file names from stdin, "
"no file name of %s allowed"),
- quote (file_name));
+ quoteaf (file_name));
skip_file = true;
}
@@ -797,7 +796,7 @@ main (int argc, char **argv)
not totally appropriate, since NUL is the separator, not NL,
but it might be better than nothing. */
unsigned long int file_number = argv_iter_n_args (ai);
- error (0, 0, "%s:%lu: %s", quote (files_from),
+ error (0, 0, "%s:%lu: %s", quotef (files_from),
file_number, _("invalid zero-length file name"));
}
skip_file = true;
diff --git a/src/who.c b/src/who.c
index 2260bc1e9..9206af2b8 100644
--- a/src/who.c
+++ b/src/who.c
@@ -620,7 +620,7 @@ who (const char *filename, int options)
STRUCT_UTMP *utmp_buf;
if (read_utmp (filename, &n_users, &utmp_buf, options) != 0)
- error (EXIT_FAILURE, errno, "%s", quote (filename));
+ error (EXIT_FAILURE, errno, "%s", quotef (filename));
if (short_list)
list_entries_who (n_users, utmp_buf);
diff --git a/tests/df/total-unprocessed.sh b/tests/df/total-unprocessed.sh
index 9779471df..f15461dee 100755
--- a/tests/df/total-unprocessed.sh
+++ b/tests/df/total-unprocessed.sh
@@ -34,7 +34,7 @@ if test "$(df --output=fstype . | tail -n1)" != '-'; then
fi
cat <<\EOF > exp || framework_failure_
-df: '_does_not_exist_': No such file or directory
+df: _does_not_exist_: No such file or directory
EOF
# Ensure that df writes the error message also in the following case.
diff --git a/tests/du/files0-from-dir.sh b/tests/du/files0-from-dir.sh
index 4d7e90cf5..67b9f6231 100755
--- a/tests/du/files0-from-dir.sh
+++ b/tests/du/files0-from-dir.sh
@@ -29,10 +29,10 @@ cat dir > /dev/null && skip_ "cat dir/ succeeds"
for prog in du wc; do
$prog --files0-from=dir > /dev/null 2>err && fail=1
- printf "$prog: 'dir':\n" > exp || fail=1
+ printf "$prog: dir:\n" > exp || fail=1
# The diagnostic string is usually "Is a directory" (ENOTDIR),
# but accept a different string or errno value.
- sed "s/'dir':.*/'dir':/" err > k; mv k err
+ sed "s/dir:.*/dir:/" err > k; mv k err
compare exp err || fail=1
done
diff --git a/tests/du/files0-from.pl b/tests/du/files0-from.pl
index f0177a2d0..3854059f0 100755
--- a/tests/du/files0-from.pl
+++ b/tests/du/files0-from.pl
@@ -53,12 +53,12 @@ my @Tests =
# one NUL
['nul-1', '--files0-from=-', '<', {IN=>"\0"}, {EXIT=>1},
- {ERR => "$prog: '-':1: invalid zero-length file name\n"}],
+ {ERR => "$prog: -:1: invalid zero-length file name\n"}],
# two NULs
['nul-2', '--files0-from=-', '<', {IN=>"\0\0"}, {EXIT=>1},
- {ERR => "$prog: '-':1: invalid zero-length file name\n"
- . "$prog: '-':2: invalid zero-length file name\n"}],
+ {ERR => "$prog: -:1: invalid zero-length file name\n"
+ . "$prog: -:2: invalid zero-length file name\n"}],
# one file name, no NUL
['1', '--files0-from=-', '<',
@@ -84,7 +84,7 @@ my @Tests =
['zero-len', '--files0-from=-', '<',
{IN=>{f=>"\0g\0"}}, {AUX=>{g=>''}},
{OUT=>"0\tg\n"}, {OUT_SUBST=>'s/^\d+/0/'},
- {ERR => "$prog: '-':1: invalid zero-length file name\n"}, {EXIT=>1} ],
+ {ERR => "$prog: -:1: invalid zero-length file name\n"}, {EXIT=>1} ],
);
my $save_temps = $ENV{DEBUG};
diff --git a/tests/du/move-dir-while-traversing.sh b/tests/du/move-dir-while-traversing.sh
index 33db58e44..67bb34580 100755
--- a/tests/du/move-dir-while-traversing.sh
+++ b/tests/du/move-dir-while-traversing.sh
@@ -92,7 +92,7 @@ du -a $t d2 2> err
test $? = 1 || fail=1
# check for the new diagnostic
-printf "du: fts_read failed: '$t/3/a/b': No such file or directory\n" > exp \
+printf "du: fts_read failed: $t/3/a/b: No such file or directory\n" > exp \
|| fail=1
compare exp err || fail=1
diff --git a/tests/ln/hard-to-sym.sh b/tests/ln/hard-to-sym.sh
index edcee6600..0e63074a2 100755
--- a/tests/ln/hard-to-sym.sh
+++ b/tests/ln/hard-to-sym.sh
@@ -70,12 +70,12 @@ mkdir d || framework_failure_
ln -s d link-to-dir || framework_failure_
ln -L link-to-dir hard-to-dir-link 2>err && fail=1
case $(cat err) in
- *": 'link-to-dir': hard link not allowed for directory"*) ;;
+ *": link-to-dir: hard link not allowed for directory"*) ;;
*) fail=1 ;;
esac
ln -P link-to-dir/ hard-to-dir-link 2>err && fail=1
case $(cat err) in
- *": 'link-to-dir/': hard link not allowed for directory"*) ;;
+ *": link-to-dir/: hard link not allowed for directory"*) ;;
*) fail=1 ;;
esac
ln -P link-to-dir hard-to-dir-link || fail=1
diff --git a/tests/misc/dircolors.pl b/tests/misc/dircolors.pl
index 2ef6228de..2e6f27d88 100755
--- a/tests/misc/dircolors.pl
+++ b/tests/misc/dircolors.pl
@@ -26,7 +26,7 @@ use strict;
my @Tests =
(
['a', '-b', {IN => {k => "exec\n"}},
- {ERR => "dircolors: 'k':1: invalid line; missing second token\n"},
+ {ERR => "dircolors: k:1: invalid line; missing second token\n"},
{EXIT => 1}],
['quote', '-b', {IN => "exec 'echo Hello;:'\n"},
{OUT => "LS_COLORS='ex='\\''echo Hello;\\:'\\'':';\n"
diff --git a/tests/misc/ls-misc.pl b/tests/misc/ls-misc.pl
index f88c7a8ea..007e25787 100755
--- a/tests/misc/ls-misc.pl
+++ b/tests/misc/ls-misc.pl
@@ -235,7 +235,7 @@ my @Tests =
{POST => sub {unlink 'd/s' or die "d/s: $!\n";
rmdir 'd' or die "d: $!\n";
restore_ls_colors; }},
- {ERR => "ls: cannot access d/s: No such file or directory\n"},
+ {ERR => "ls: cannot access 'd/s': No such file or directory\n"},
{EXIT => 1}
],
# Related to the above fix, is this case where
@@ -289,7 +289,7 @@ my @Tests =
# From Stéphane Chazelas.
['no-a-isdir-b', 'no-dir d',
{OUT => "d:\n"},
- {ERR => "ls: cannot access no-dir: No such file or directory\n"},
+ {ERR => "ls: cannot access 'no-dir': No such file or directory\n"},
$mkdir, $rmdir, {EXIT => 2}],
['recursive-2', '-R d', {OUT => "d:\ne\n\nd/e:\n"}, $mkdir2, $rmdir2],
@@ -327,8 +327,8 @@ my @Tests =
# at least one of which is a nonempty directory.
['multi-arg-U1', '-U1 d no-such',
{OUT => "d:\nf\n"},
- {ERR_SUBST=>'s/ch:.*/ch:/'},
- {ERR => "$prog: cannot access no-such:\n"},
+ {ERR_SUBST=>"s/ch':.*/ch':/"},
+ {ERR => "$prog: cannot access 'no-such':\n"},
$mkdir_reg,
$rmdir_reg,
{EXIT => 2},
diff --git a/tests/misc/md5sum.pl b/tests/misc/md5sum.pl
index c99658213..ad1896d53 100755
--- a/tests/misc/md5sum.pl
+++ b/tests/misc/md5sum.pl
@@ -92,7 +92,7 @@ my @Tests =
. "invalid\n" }},
{AUX=> {f=> 'foo'}},
{OUT=>"f: FAILED\nf: FAILED\n"},
- {ERR=>"md5sum: 'f.md5': 3: "
+ {ERR=>"md5sum: f.md5: 3: "
. "improperly formatted MD5 checksum line\n"
. "md5sum: WARNING: 1 line is improperly formatted\n"
. "md5sum: WARNING: 2 computed checksums did NOT match\n"},
@@ -102,7 +102,7 @@ my @Tests =
# sha1sum accept BSD format.
['check-bsd', '--check', {IN=> {'f.sha1' => "SHA1 (f) = $degenerate\n"}},
{AUX=> {f=> ''}},
- {ERR=>"md5sum: 'f.sha1': no properly formatted "
+ {ERR=>"md5sum: f.sha1: no properly formatted "
. "MD5 checksum lines found\n"},
{EXIT=> 1}],
['check-bsd2', '--check', {IN=> {'f.md5' => "MD5 (f) = $degenerate\n"}},
@@ -112,7 +112,7 @@ my @Tests =
{AUX=> {f=> 'bar'}}, {EXIT=> 1}],
['check-openssl', '--check', {IN=> {'f.sha1' => "SHA1(f)= $degenerate\n"}},
{AUX=> {f=> ''}},
- {ERR=>"md5sum: 'f.sha1': no properly formatted "
+ {ERR=>"md5sum: f.sha1: no properly formatted "
. "MD5 checksum lines found\n"},
{EXIT=> 1}],
['check-openssl2', '--check', {IN=> {'f.md5' => "MD5(f)= $degenerate\n"}},
@@ -121,7 +121,7 @@ my @Tests =
{IN=> {'f.md5' => "MD5(f)= $degenerate\n"}},
{AUX=> {f=> 'bar'}}, {EXIT=> 1}],
['bsd-segv', '--check', {IN=> {'z' => "MD5 ("}}, {EXIT=> 1},
- {ERR=> "$prog: 'z': no properly formatted MD5 checksum lines found\n"}],
+ {ERR=> "$prog: z: no properly formatted MD5 checksum lines found\n"}],
# Ensure that when there's a NUL byte among the checksum hex digits
# we detect the invalid formatting and don't even open the file.
@@ -129,7 +129,7 @@ my @Tests =
# h: FAILED
# md5sum: WARNING: 1 of 1 computed checksum did NOT match
['nul-in-cksum', '--check', {IN=> {'h'=>("\0"x32)." h\n"}}, {EXIT=> 1},
- {ERR=> "$prog: 'h': no properly formatted MD5 checksum lines found\n"}],
+ {ERR=> "$prog: h: no properly formatted MD5 checksum lines found\n"}],
);
# Insert the '--text' argument for each test.
diff --git a/tests/misc/readlink-fp-loop.sh b/tests/misc/readlink-fp-loop.sh
index d3e1a1eaf..50ada55e8 100755
--- a/tests/misc/readlink-fp-loop.sh
+++ b/tests/misc/readlink-fp-loop.sh
@@ -42,10 +42,10 @@ ln -sf ../s/1 d/2 || framework_failure_
readlink -v -e p/1 2> out && fail=1
readlink_msg=$(cat out)
case $readlink_msg in
- "readlink: 'p/1': "*) ;;
+ "readlink: p/1: "*) ;;
*) fail=1;;
esac
-symlink_loop_msg=${readlink_msg#"readlink: 'p/1': "}
+symlink_loop_msg=${readlink_msg#"readlink: p/1: "}
# Exercise the hash table code.
ln -nsf ../s/3 d/2 || framework_failure_
@@ -62,7 +62,7 @@ compare exp out || fail=1
# A trivial loop
ln -s loop loop
readlink -v -e loop 2> out && fail=1
-echo "readlink: 'loop': $symlink_loop_msg" > exp || framework_failure_
+echo "readlink: loop: $symlink_loop_msg" > exp || framework_failure_
compare exp out || fail=1
Exit $fail
diff --git a/tests/misc/sha1sum.pl b/tests/misc/sha1sum.pl
index b58a7f4a1..de923b636 100755
--- a/tests/misc/sha1sum.pl
+++ b/tests/misc/sha1sum.pl
@@ -53,7 +53,7 @@ my @Tests =
# md5sum accept BSD format.
['check-bsd', '--check', {IN=> {'f.md5' => "MD5 (f) = $sha_degenerate\n"}},
{AUX=> {f=> ''}},
- {ERR=>"sha1sum: 'f.md5': no properly formatted "
+ {ERR=>"sha1sum: f.md5: no properly formatted "
. "SHA1 checksum lines found\n"},
{EXIT=> 1}],
['check-bsd2', '--check',
@@ -65,7 +65,7 @@ my @Tests =
['check-openssl', '--check',
{IN=> {'f.md5' => "MD5(f)= $sha_degenerate\n"}},
{AUX=> {f=> ''}},
- {ERR=>"sha1sum: 'f.md5': no properly formatted "
+ {ERR=>"sha1sum: f.md5: no properly formatted "
. "SHA1 checksum lines found\n"},
{EXIT=> 1}],
['check-openssl2', '--check',
@@ -75,7 +75,7 @@ my @Tests =
{IN=> {'f.sha1' => "SHA1(f)= $sha_degenerate\n"}},
{AUX=> {f=> 'bar'}}, {EXIT=> 1}],
['bsd-segv', '--check', {IN=> {'z' => "SHA1 ("}}, {EXIT=> 1},
- {ERR=> "$prog: 'z': no properly formatted SHA1 checksum lines found\n"}],
+ {ERR=> "$prog: z: no properly formatted SHA1 checksum lines found\n"}],
);
# Insert the '--text' argument for each test.
diff --git a/tests/misc/shred-passes.sh b/tests/misc/shred-passes.sh
index ddf788b05..64216fd8a 100755
--- a/tests/misc/shred-passes.sh
+++ b/tests/misc/shred-passes.sh
@@ -24,12 +24,12 @@ print_ver_ shred
# 3 random passes and a single rename.
printf 1 > f || framework_failure_
echo "\
-shred: 'f': pass 1/3 (random)...
-shred: 'f': pass 2/3 (random)...
-shred: 'f': pass 3/3 (random)...
-shred: 'f': removing
-shred: 'f': renamed to 0
-shred: 'f': removed" > exp || framework_failure_
+shred: f: pass 1/3 (random)...
+shred: f: pass 2/3 (random)...
+shred: f: pass 3/3 (random)...
+shred: f: removing
+shred: f: renamed to 0
+shred: f: removed" > exp || framework_failure_
shred -v -u f 2>out || fail=1
compare exp out || fail=1
@@ -39,9 +39,9 @@ compare exp out || fail=1
# to bypass the data passes
touch f || framework_failure_
echo "\
-shred: 'f': removing
-shred: 'f': renamed to 0
-shred: 'f': removed" > exp || framework_failure_
+shred: f: removing
+shred: f: renamed to 0
+shred: f: removed" > exp || framework_failure_
shred -v -u f 2>out || fail=1
compare exp out || fail=1
@@ -52,29 +52,29 @@ compare exp out || fail=1
dd bs=100K count=1 if=/dev/zero | tr '\0' 'U' > Us || framework_failure_
printf 1 > f || framework_failure_
echo "\
-shred: 'f': pass 1/20 (random)...
-shred: 'f': pass 2/20 (ffffff)...
-shred: 'f': pass 3/20 (924924)...
-shred: 'f': pass 4/20 (888888)...
-shred: 'f': pass 5/20 (db6db6)...
-shred: 'f': pass 6/20 (777777)...
-shred: 'f': pass 7/20 (492492)...
-shred: 'f': pass 8/20 (bbbbbb)...
-shred: 'f': pass 9/20 (555555)...
-shred: 'f': pass 10/20 (aaaaaa)...
-shred: 'f': pass 11/20 (random)...
-shred: 'f': pass 12/20 (6db6db)...
-shred: 'f': pass 13/20 (249249)...
-shred: 'f': pass 14/20 (999999)...
-shred: 'f': pass 15/20 (111111)...
-shred: 'f': pass 16/20 (000000)...
-shred: 'f': pass 17/20 (b6db6d)...
-shred: 'f': pass 18/20 (eeeeee)...
-shred: 'f': pass 19/20 (333333)...
-shred: 'f': pass 20/20 (random)...
-shred: 'f': removing
-shred: 'f': renamed to 0
-shred: 'f': removed" > exp || framework_failure_
+shred: f: pass 1/20 (random)...
+shred: f: pass 2/20 (ffffff)...
+shred: f: pass 3/20 (924924)...
+shred: f: pass 4/20 (888888)...
+shred: f: pass 5/20 (db6db6)...
+shred: f: pass 6/20 (777777)...
+shred: f: pass 7/20 (492492)...
+shred: f: pass 8/20 (bbbbbb)...
+shred: f: pass 9/20 (555555)...
+shred: f: pass 10/20 (aaaaaa)...
+shred: f: pass 11/20 (random)...
+shred: f: pass 12/20 (6db6db)...
+shred: f: pass 13/20 (249249)...
+shred: f: pass 14/20 (999999)...
+shred: f: pass 15/20 (111111)...
+shred: f: pass 16/20 (000000)...
+shred: f: pass 17/20 (b6db6d)...
+shred: f: pass 18/20 (eeeeee)...
+shred: f: pass 19/20 (333333)...
+shred: f: pass 20/20 (random)...
+shred: f: removing
+shred: f: renamed to 0
+shred: f: removed" > exp || framework_failure_
shred -v -u -n20 --random-source=Us f 2>out || fail=1
compare exp out || fail=1
diff --git a/tests/misc/sort-files0-from.pl b/tests/misc/sort-files0-from.pl
index 6773309d1..63c5bb3e4 100755
--- a/tests/misc/sort-files0-from.pl
+++ b/tests/misc/sort-files0-from.pl
@@ -55,14 +55,14 @@ my @Tests =
# one NUL
['nul-1', '--files0-from=-', '<', {IN=>"\0"}, {EXIT=>2},
- {ERR => "$prog: '-':1: invalid zero-length file name\n"}],
+ {ERR => "$prog: -:1: invalid zero-length file name\n"}],
# two NULs
# Note that the behavior here differs from 'wc' in that the
# first zero-length file name is treated as fatal, so there
# is only one line of diagnostic output.
['nul-2', '--files0-from=-', '<', {IN=>"\0\0"}, {EXIT=>2},
- {ERR => "$prog: '-':1: invalid zero-length file name\n"}],
+ {ERR => "$prog: -:1: invalid zero-length file name\n"}],
# one file name, no NUL
['1', '--files0-from=-', '<',
@@ -86,7 +86,7 @@ my @Tests =
# should be no output on STDOUT.
['zero-len', '--files0-from=-', '<',
{IN=>{f=>"\0g\0"}}, {AUX=>{g=>''}},
- {ERR => "$prog: '-':1: invalid zero-length file name\n"}, {EXIT=>2} ],
+ {ERR => "$prog: -:1: invalid zero-length file name\n"}, {EXIT=>2} ],
);
my $save_temps = $ENV{DEBUG};
diff --git a/tests/misc/sort.pl b/tests/misc/sort.pl
index 012d8b94e..f6a222c2c 100755
--- a/tests/misc/sort.pl
+++ b/tests/misc/sort.pl
@@ -33,7 +33,7 @@ my $mb_locale = $ENV{LOCALE_FR_UTF8};
# Normalize each diagnostic to use '-'.
my $normalize_filename = {ERR_SUBST => 's/^$prog: .*?:/$prog: -:/'};
-my $no_file = "$prog: cannot read: 'no-file': No such file or directory\n";
+my $no_file = "$prog: cannot read: no-file: No such file or directory\n";
my @Tests =
(
@@ -327,7 +327,7 @@ my @Tests =
["o-no-file1", qw(-o no-file no-file), {EXIT=>2}, {ERR=>$no_file}],
["create-empty", qw(-o no/such/file /dev/null), {EXIT=>2},
- {ERR=>"$prog: open failed: 'no/such/file': No such file or directory\n"}],
+ {ERR=>"$prog: open failed: no/such/file: No such file or directory\n"}],
# From Paul Eggert. This was fixed in textutils-1.22k.
["neg-nls", '-n', {IN=>"-1\n-9\n"}, {OUT=>"-9\n-1\n"}],
diff --git a/tests/misc/tsort.pl b/tests/misc/tsort.pl
index 60f22c43c..4d04866ad 100755
--- a/tests/misc/tsort.pl
+++ b/tests/misc/tsort.pl
@@ -27,10 +27,10 @@ my @Tests =
(
['cycle-1', {IN => {f => "t b\nt s\ns t\n"}}, {OUT => "s\nt\nb\n"},
{EXIT => 1},
- {ERR => "tsort: 'f': input contains a loop:\ntsort: s\ntsort: t\n"} ],
+ {ERR => "tsort: f: input contains a loop:\ntsort: s\ntsort: t\n"} ],
['cycle-2', {IN => {f => "t x\nt s\ns t\n"}}, {OUT => "s\nt\nx\n"},
{EXIT => 1},
- {ERR => "tsort: 'f': input contains a loop:\ntsort: s\ntsort: t\n"} ],
+ {ERR => "tsort: f: input contains a loop:\ntsort: s\ntsort: t\n"} ],
['posix-1', {IN => "a b c c d e\ng g\nf g e f\nh h\n"},
{OUT => "a\nc\nd\nh\nb\ne\nf\ng\n"}],
@@ -50,7 +50,7 @@ my @Tests =
# copy of the final token were appended.
['odd', {IN => "a\n"},
{EXIT => 1},
- {ERR => "tsort: 'odd.1': input contains an odd number of tokens\n"}],
+ {ERR => "tsort: odd.1: input contains an odd number of tokens\n"}],
['only-one', {IN => {f => ""}}, {IN => {g => ""}},
{EXIT => 1},
diff --git a/tests/misc/wc-files0-from.pl b/tests/misc/wc-files0-from.pl
index 519587be6..cae3fc225 100755
--- a/tests/misc/wc-files0-from.pl
+++ b/tests/misc/wc-files0-from.pl
@@ -53,13 +53,13 @@ my @Tests =
# one NUL
['nul-1', '--files0-from=-', '<', {IN=>"\0"}, {EXIT=>1},
- {ERR => "$prog: '-':1: invalid zero-length file name\n"}],
+ {ERR => "$prog: -:1: invalid zero-length file name\n"}],
# two NULs
['nul-2', '--files0-from=-', '<', {IN=>"\0\0"}, {EXIT=>1},
{OUT=>"0 0 0 total\n"},
- {ERR => "$prog: '-':1: invalid zero-length file name\n"
- . "$prog: '-':2: invalid zero-length file name\n"}],
+ {ERR => "$prog: -:1: invalid zero-length file name\n"
+ . "$prog: -:2: invalid zero-length file name\n"}],
# one file name, no NUL
['1', '--files0-from=-', '<',
@@ -83,7 +83,7 @@ my @Tests =
['zero-len', '--files0-from=-', '<',
{IN=>{f=>"\0g\0"}}, {AUX=>{g=>''}},
{OUT=>"0 0 0 g\n0 0 0 total\n"},
- {ERR => "$prog: '-':1: invalid zero-length file name\n"}, {EXIT=>1} ],
+ {ERR => "$prog: -:1: invalid zero-length file name\n"}, {EXIT=>1} ],
);
my $save_temps = $ENV{DEBUG};
diff --git a/tests/rm/d-1.sh b/tests/rm/d-1.sh
index 43b753ebc..bde8c695c 100755
--- a/tests/rm/d-1.sh
+++ b/tests/rm/d-1.sh
@@ -25,7 +25,7 @@ mkdir a || framework_failure_
rm --verbose --dir a b > out || fail=1
cat <<\EOF > exp || framework_failure_
-removed directory: 'a'
+removed directory 'a'
removed 'b'
EOF
diff --git a/tests/rm/d-3.sh b/tests/rm/d-3.sh
index af39da38b..1200ca459 100755
--- a/tests/rm/d-3.sh
+++ b/tests/rm/d-3.sh
@@ -28,7 +28,7 @@ printf "%s" \
> exp.err || framework_failure_
printf "%s\n" \
- "removed directory: 'd'" \
+ "removed directory 'd'" \
> exp || framework_failure_
compare exp out || fail=1
diff --git a/tests/rm/r-1.sh b/tests/rm/r-1.sh
index 21564c6a5..2a14110a3 100755
--- a/tests/rm/r-1.sh
+++ b/tests/rm/r-1.sh
@@ -23,8 +23,8 @@ mkdir a a/a || framework_failure_
> b || framework_failure_
cat <<\EOF > exp || framework_failure_
-removed directory: 'a/a'
-removed directory: 'a'
+removed directory 'a/a'
+removed directory 'a'
removed 'b'
EOF
diff --git a/tests/rm/r-2.sh b/tests/rm/r-2.sh
index a99bdbf4b..a6616f648 100755
--- a/tests/rm/r-2.sh
+++ b/tests/rm/r-2.sh
@@ -25,8 +25,8 @@ mkdir t t/a t/a/b || framework_failure_
# FIXME: if this fails, it's a framework failure
cat <<\EOF | sort > t/E || framework_failure_
-removed directory: 't/a'
-removed directory: 't/a/b'
+removed directory 't/a'
+removed directory 't/a/b'
removed 't/a/b/g'
removed 't/a/f'
EOF
diff --git a/tests/rm/v-slash.sh b/tests/rm/v-slash.sh
index 5cabb0bc6..5a5d401d5 100755
--- a/tests/rm/v-slash.sh
+++ b/tests/rm/v-slash.sh
@@ -26,7 +26,7 @@ touch a/x || framework_failure_
rm --verbose -r a/// > out || fail=1
cat <<\EOF > exp || fail=1
removed 'a/x'
-removed directory: 'a/'
+removed directory 'a/'
EOF
compare exp out || fail=1
diff --git a/tests/split/l-chunk.sh b/tests/split/l-chunk.sh
index c97b3b562..c4e55685b 100755
--- a/tests/split/l-chunk.sh
+++ b/tests/split/l-chunk.sh
@@ -24,7 +24,7 @@ echo "split: invalid number of chunks: '1o'" > exp
split -n l/1o 2>err && fail=1
compare exp err || fail=1
-echo "split: '-': cannot determine file size" > exp
+echo "split: -: cannot determine file size" > exp
echo | split -n l/1 2>err && fail=1
compare exp err || fail=1