This is the mail archive of the libc-hacker@sources.redhat.com 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] |
On Tue, Aug 01, 2000 at 09:17:27AM -0700, Ulrich Drepper wrote:
> "H . J . Lu" <hjl@lucon.org> writes:
>
> > Please take a look at my strace output. The search in the build
> > diretory succeeded. But it still searched /usr/lib/gconv. You can
> > put in a strace to see it for yourself.
>
> Strace output doesn't help. The problem is in the code which reads
> the gconv-modules file and then tries to find a specific module. This
> seems to fail and therefore the search goes on in the next directory.
That is incorrect:
1. I compare 2 files. They are the same.
2. The code in question is
for (cnt = 0; __gconv_path_elem[cnt].name != NULL; ++cnt)
{
char real_elem[__gconv_max_path_elem_len + sizeof (gconv_conf_filename)];
if (__realpath (__gconv_path_elem[cnt].name, real_elem) != NULL)
{
size_t elem_len = strlen (real_elem);
char *filename;
filename = alloca (elem_len + 1 + sizeof (gconv_conf_filename));
__mempcpy (__mempcpy (__mempcpy (filename, real_elem, elem_len),
"/", 1),
gconv_conf_filename, sizeof (gconv_conf_filename));
/* Read the next configuration file. */
read_conf_file (filename, real_elem, elem_len, &modules, &nmodules);
}
}
I didn't see anything which said stop if a module was found. It will
just read all config files it can find regardless their contents.
H.J.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |