CVSROOT:        /cvs
Module name:    src
Changes by:     guent...@cvs.openbsd.org        2018/11/15 22:05:44

Modified files:
        libexec/ld.so  : resolve.c 

Log message:
Borrow an idea from DragonFly BSD: factor out the "does this symbol match what
we're looking up?" logic from _dl_find_symbol_obj() into matched_symbol(), so
that the former is just the "iterate across the hash" logic.

matched_symbol() returns zero on "not found", one on "found strong
symbol", and negative one on "found weak symbol".  The last of those lets
the caller give up on this object after finding a weak symbol, as there's
no point in continuing to search for a strong symbol in the same object.

ok mpi@

Reply via email to