| --- a/lib/paxnames.c 2016-04-06 00:04:47.314860045 +0300 |
| +++ b/lib/paxnames.c 2016-04-06 02:08:44.962297881 +0300 |
| @@ -18,6 +18,7 @@ |
| #include <system.h> |
| #include <hash.h> |
| #include <paxlib.h> |
| +#include <quotearg.h> |
| |
| |
| /* Hash tables of strings. */ |
| @@ -114,7 +115,15 @@ |
| for (p = file_name + prefix_len; *p; ) |
| { |
| if (p[0] == '.' && p[1] == '.' && (ISSLASH (p[2]) || !p[2])) |
| - prefix_len = p + 2 - file_name; |
| + { |
| + static char const *const diagnostic[] = |
| + { |
| + N_("%s: Member name contains '..'"), |
| + N_("%s: Hard link target contains '..'") |
| + }; |
| + ERROR ((0, 0, _(diagnostic[link_target]), |
| + quotearg_colon (file_name))); |
| + } |
| |
| do |
| { |