diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2007-02-11 16:19:28 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2007-02-11 16:19:28 +0000 |
commit | 6ca0444420223c224162674902d4f6e4e093962d (patch) | |
tree | c13da1537be3327e041fac86d9fdce68de70298a /coreutils | |
parent | 136f42f503cb3e9588e62332d043e92b7475ec4e (diff) |
syslogd: fix "readpath bug" by using readlink instead
libbb: rename xgetcwd and xreadlink
Diffstat (limited to 'coreutils')
-rw-r--r-- | coreutils/ls.c | 2 | ||||
-rw-r--r-- | coreutils/pwd.c | 3 | ||||
-rw-r--r-- | coreutils/stat.c | 4 |
3 files changed, 5 insertions, 4 deletions
diff --git a/coreutils/ls.c b/coreutils/ls.c index 798bc8201..34fae5026 100644 --- a/coreutils/ls.c +++ b/coreutils/ls.c @@ -664,7 +664,7 @@ static int list_single(struct dnode *dn) break; case LIST_SYMLINK: if (S_ISLNK(dn->dstat.st_mode)) { - char *lpath = xreadlink(dn->fullname); + char *lpath = xmalloc_readlink_or_warn(dn->fullname); if (!lpath) break; printf(" -> "); #if ENABLE_FEATURE_LS_FILETYPES || ENABLE_FEATURE_LS_COLOR diff --git a/coreutils/pwd.c b/coreutils/pwd.c index b4599b4f3..d96f6a8e5 100644 --- a/coreutils/pwd.c +++ b/coreutils/pwd.c @@ -16,7 +16,8 @@ int pwd_main(int argc, char **argv) { char *buf; - if ((buf = xgetcwd(NULL)) != NULL) { + buf = xrealloc_getcwd_or_warn(NULL); + if (buf != NULL) { puts(buf); fflush_stdout_and_exit(EXIT_SUCCESS); } diff --git a/coreutils/stat.c b/coreutils/stat.c index ff14a1599..20ade9472 100644 --- a/coreutils/stat.c +++ b/coreutils/stat.c @@ -188,7 +188,7 @@ static void print_stat(char *pformat, size_t buf_len, char m, case 'N': strncat(pformat, "s", buf_len); if (S_ISLNK(statbuf->st_mode)) { - char *linkname = xreadlink(filename); + char *linkname = xmalloc_readlink_or_warn(filename); if (linkname == NULL) { bb_perror_msg("cannot read symbolic link '%s'", filename); return; @@ -477,7 +477,7 @@ static int do_stat(char const *filename, char const *format) pw_ent = getpwuid(statbuf.st_uid); if (S_ISLNK(statbuf.st_mode)) - linkname = xreadlink(filename); + linkname = xmalloc_readlink_or_warn(filename); if (linkname) printf(" File: \"%s\" -> \"%s\"\n", filename, linkname); else |