diff options
Diffstat (limited to 'packages/glibc/glibc-cvs/ldconfig.patch')
-rw-r--r-- | packages/glibc/glibc-cvs/ldconfig.patch | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/packages/glibc/glibc-cvs/ldconfig.patch b/packages/glibc/glibc-cvs/ldconfig.patch index e69de29bb2..c60b9b1432 100644 --- a/packages/glibc/glibc-cvs/ldconfig.patch +++ b/packages/glibc/glibc-cvs/ldconfig.patch @@ -0,0 +1,37 @@ +--- elf/ldconfig.c 2003-07-08 23:26:27.000000000 +0900 ++++ elf/ldconfig.c.debian 2003-07-08 23:29:43.000000000 +0900 +@@ -920,26 +920,24 @@ + { + FILE *file = NULL; + char *line = NULL; +- const char *canon; ++ const char *canon = filename; + size_t len = 0; ++ int file_fd; + + if (opt_chroot) + { + canon = chroot_canon (opt_chroot, filename); +- if (canon) +- file = fopen (canon, "r"); +- else ++ if (!canon) + canon = filename; + } +- else +- { +- canon = filename; +- file = fopen (filename, "r"); +- } ++ ++ if ((file_fd = open(canon, O_RDONLY | O_EXCL, 0022)) != -1) ++ file = fdopen (file_fd, "r"); + + if (file == NULL) + { +- error (0, errno, _("Can't open configuration file %s"), canon); ++ if (opt_verbose) ++ error (0, errno, _("Can't open configuration file %s"), canon); + if (canon != filename) + free ((char *) canon); + return; |