dlopen (pathfinder): try each basename per dir

Rather than searching all search dirs per one basename,
search for all basenames within per one search dir.

pathfinder.h (check_path_access): Interchange dir- and basename-loops.
This commit is contained in:
Michael Haubenwallner 2016-08-31 20:07:07 +02:00 committed by Corinna Vinschen
parent 97974e3076
commit b37c3ed5e5
1 changed files with 6 additions and 6 deletions

View File

@ -182,12 +182,12 @@ public:
basenamelist::member const ** found_basename = NULL) basenamelist::member const ** found_basename = NULL)
{ {
char const * critname = criterion.name (); char const * critname = criterion.name ();
for (basenamelist::iterator name = basenames_.begin (); for (searchdirlist::iterator dir(searchdirs_.begin ());
name != basenames_.end (); dir != searchdirs_.end ();
++name) ++dir)
for (searchdirlist::iterator dir(searchdirs_.begin ()); for (basenamelist::iterator name = basenames_.begin ();
dir != searchdirs_.end (); name != basenames_.end ();
++dir) ++name)
if (criterion.test (dir, name)) if (criterion.test (dir, name))
{ {
debug_printf ("(%s), take %s%s", critname, debug_printf ("(%s), take %s%s", critname,