Blame coreutils-8.17-ls-rootdir-symlink.patch
|
Ondřej Vašík |
bfd5cf |
diff -urNp coreutils-8.17-orig/src/ls.c coreutils-8.17/src/ls.c
|
|
Ondřej Vašík |
bfd5cf |
--- coreutils-8.17-orig/src/ls.c 2012-05-11 20:59:01.467946060 +0200
|
|
Ondřej Vašík |
bfd5cf |
+++ coreutils-8.17/src/ls.c 2012-05-11 21:00:38.276821883 +0200
|
|
Ondřej Vašík |
bfd5cf |
@@ -3206,14 +3206,9 @@ make_link_name (char const *name, char const *linkname)
|
|
Ondřej Vašík |
bfd5cf |
if (IS_ABSOLUTE_FILE_NAME (linkname))
|
|
Ondřej Vašík |
bfd5cf |
return xstrdup (linkname);
|
|
Ondřej Vašík |
bfd5cf |
|
|
Ondřej Vašík |
bfd5cf |
- /* The link is to a relative name. Prepend any leading directory
|
|
Ondřej Vašík |
bfd5cf |
- in 'name' to the link name. */
|
|
Ondřej Vašík |
bfd5cf |
- size_t prefix_len = dir_len (name);
|
|
Ondřej Vašík |
bfd5cf |
- if (prefix_len == 0)
|
|
Ondřej Vašík |
bfd5cf |
- return xstrdup (linkname);
|
|
Ondřej Vašík |
bfd5cf |
-
|
|
Ondřej Vašík |
bfd5cf |
- char *p = xmalloc (prefix_len + 1 + strlen (linkname) + 1);
|
|
Ondřej Vašík |
bfd5cf |
- stpcpy (stpncpy (p, name, prefix_len + 1), linkname);
|
|
Ondřej Vašík |
bfd5cf |
+ char *d = dir_name (name);
|
|
Ondřej Vašík |
bfd5cf |
+ char *p = file_name_concat (d, linkname, NULL);
|
|
Ondřej Vašík |
bfd5cf |
+ free (d);
|
|
Ondřej Vašík |
bfd5cf |
return p;
|
|
Ondřej Vašík |
bfd5cf |
}
|
|
Ondřej Vašík |
bfd5cf |
|