diff options
author | Jérémie Koenig <jk@jk.fr.eu.org> | 2010-03-26 21:08:53 +0300 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2010-03-26 21:08:53 +0300 |
commit | fbedacfc8caa1ec8f14e664a881cb0a93c8f8712 (patch) | |
tree | 6c08780bbaad6320149930bdbcfbee5a2eed9f5d /coreutils | |
parent | 35fdb1bc9cb82fa5630c2d40ae49110ecd7c88ea (diff) |
Hurd compat fixes. Mostly dealing with absent PATH_MAX
Signed-off-by: Jérémie Koenig <jk@jk.fr.eu.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'coreutils')
-rw-r--r-- | coreutils/realpath.c | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/coreutils/realpath.c b/coreutils/realpath.c index 28906ba55..90a71ed7d 100644 --- a/coreutils/realpath.c +++ b/coreutils/realpath.c @@ -17,30 +17,20 @@ int realpath_main(int argc UNUSED_PARAM, char **argv) { int retval = EXIT_SUCCESS; -#if PATH_MAX > (BUFSIZ+1) - RESERVE_CONFIG_BUFFER(resolved_path, PATH_MAX); -# define resolved_path_MUST_FREE 1 -#else -#define resolved_path bb_common_bufsiz1 -# define resolved_path_MUST_FREE 0 -#endif - if (!*++argv) { bb_show_usage(); } do { - if (realpath(*argv, resolved_path) != NULL) { + char *resolved_path = xmalloc_realpath(*argv); + if (resolved_path != NULL) { puts(resolved_path); + free(resolved_path); } else { retval = EXIT_FAILURE; bb_simple_perror_msg(*argv); } } while (*++argv); -#if ENABLE_FEATURE_CLEAN_UP && resolved_path_MUST_FREE - RELEASE_CONFIG_BUFFER(resolved_path); -#endif - fflush_stdout_and_exit(retval); } |