This is the mail archive of the libc-hacker@sourceware.org mailing list for the glibc project.
Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
2011-05-03 Andreas Schwab <schwab@redhat.com> * elf/ldconfig.c (add_dir): Don't crash on empty path. --- elf/ldconfig.c | 15 +++++++++------ 1 files changed, 9 insertions(+), 6 deletions(-) diff --git a/elf/ldconfig.c b/elf/ldconfig.c index 1b2eaa3..751b49b 100644 --- a/elf/ldconfig.c +++ b/elf/ldconfig.c @@ -384,14 +384,17 @@ add_dir (const char *line) } /* Canonify path: for now only remove leading and trailing - whitespace and the trailing slashes slashes. */ - i = strlen (entry->path) - 1; + whitespace and the trailing slashes. */ + i = strlen (entry->path); - while (isspace (entry->path[i]) && i > 0) - entry->path[i--] = '\0'; + while (i > 0 && isspace (entry->path[i - 1])) + entry->path[--i] = '\0'; - while (entry->path[i] == '/' && i > 0) - entry->path[i--] = '\0'; + while (i > 0 && entry->path[i - 1] == '/') + entry->path[--i] = '\0'; + + if (i == 0) + return; char *path = entry->path; if (opt_chroot) -- 1.7.4.4 -- Andreas Schwab, schwab@redhat.com GPG Key fingerprint = D4E8 DBE3 3813 BB5D FA84 5EC7 45C6 250E 6F00 984E "And now for something completely different."
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |