From e797f2e35cbf7edf2c7de7f79442bda550917f07 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Fri, 10 Dec 2004 08:57:56 +0000 Subject: * posix/getconf.c (main): Skip over initial underscore in $libexecdir/getconf/default symlink target. --- ChangeLog | 5 +++++ posix/getconf.c | 8 +++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4b5c3dca03..e9535c47e1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2004-12-10 Jakub Jelinek + + * posix/getconf.c (main): Skip over initial underscore in + $libexecdir/getconf/default symlink target. + 2004-11-29 Jakub Jelinek * stdlib/strtod_l.c (INTERNAL (__STRTOF)): If densize > 2 diff --git a/posix/getconf.c b/posix/getconf.c index 5aac25e4ca..bf551bdbb6 100644 --- a/posix/getconf.c +++ b/posix/getconf.c @@ -997,12 +997,14 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\ { char default_name[getconf_dirlen + sizeof "/default"]; memcpy (mempcpy (default_name, getconf_dir, getconf_dirlen), - "/default", sizeof "/default"); + "/default", sizeof "/default"); int len = readlink (default_name, buf, sizeof buf - 1); if (len > 0) { buf[len] = '\0'; spec = buf; + if (spec[0] == '_') + spec++; } } @@ -1036,8 +1038,8 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\ size_t spec_len = strlen (spec); char getconf_name[getconf_dirlen + 2 + spec_len + 1]; memcpy (mempcpy (mempcpy (getconf_name, getconf_dir, - getconf_dirlen), - "/_", 2), spec, spec_len + 1); + getconf_dirlen), + "/_", 2), spec, spec_len + 1); args[0] = argv0; args[1] = "-v"; args[2] = spec; -- cgit v1.2.3