From 6ba719100115ec788bcbc4276a1b4c31e937e855 Mon Sep 17 00:00:00 2001 From: Rob Landley Date: Mon, 30 May 2016 13:43:17 -0500 Subject: Add output path to cp error message filenames. --- toys/posix/cp.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'toys/posix/cp.c') diff --git a/toys/posix/cp.c b/toys/posix/cp.c index ea1ef6f4..d21af2ff 100644 --- a/toys/posix/cp.c +++ b/toys/posix/cp.c @@ -345,7 +345,19 @@ int cp_node(struct dirtree *try) err = "%s"; } - if (err) perror_msg(err, catch); + if (err) { + char *f = 0; + + if (catch == try->name) { + f = dirtree_path(try, 0); + while (try->parent) try = try->parent; + catch = xmprintf("%s%s", TT.destname, f+strlen(try->name)); + free(f); + f = catch; + } + perror_msg(err, catch); + free(f); + } return 0; } -- cgit v1.2.3