* quoting myself: > branch-1-5: > 2007-01-28 Dave Brolley <[EMAIL PROTECTED]> > > * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL > before checking that it is still in the list.
Darn, I royally goofed up the backport. Applying this. Sorry about that, Ralf 2007-01-29 Ralf Wildenhues <[EMAIL PROTECTED]> * libltdl/ltdl.c (lt_dlexit): Fix my bogus backport of Dave Brolley's patch from CVS HEAD. Index: libltdl/ltdl.c =================================================================== RCS file: /cvsroot/libtool/libtool/libltdl/ltdl.c,v retrieving revision 1.174.2.27 diff -u -r1.174.2.27 ltdl.c --- libltdl/ltdl.c 28 Jan 2007 14:55:37 -0000 1.174.2.27 +++ libltdl/ltdl.c 29 Jan 2007 21:52:30 -0000 @@ -2341,6 +2341,13 @@ lt_dlhandle tmp = cur; cur = cur->next; if (!LT_DLIS_RESIDENT (tmp)) + saw_nonresident = 1; + if (!LT_DLIS_RESIDENT (tmp) && tmp->info.ref_count <= level) + { + if (lt_dlclose (tmp)) + { + ++errors; + } /* Make sure that the handle pointed to by 'cur' still exists. lt_dlclose recursively closes dependent libraries which removes them from the linked list. One of these might be the one @@ -2353,14 +2360,6 @@ if (! tmp) cur = handles; } - - saw_nonresident = 1; - if (!LT_DLIS_RESIDENT (tmp) && tmp->info.ref_count <= level) - { - if (lt_dlclose (tmp)) - { - ++errors; - } } } /* done if only resident modules are left */ _______________________________________________ Bug-libtool mailing list Bug-libtool@gnu.org http://lists.gnu.org/mailman/listinfo/bug-libtool