suite.
* libltdl/ltdl.c (lt_dlexit): Quit loop if only resident modules
are left.
+2001-04-23 Peter Eisentraut <peter_e@gmx.net>
+
+ * doc/PLATFORMS: With this patch, freebsd4.3 passes the test
+ suite.
+ * libltdl/ltdl.c (lt_dlexit): Quit loop if only resident modules
+ are left.
+
2001-04-23 Gary V. Vaughan <gvv@techie.com>
* doc/PLATFORMS: With this patch, my Solaris boxes now pass the
i*86-pc-cygwin gcc 1.3b NS
(egcs-1.1 stock b20.1 compiler)
i*86-*-dguxR4.20MU01 gcc 1.2 ok
+i*86-*-freebsd4.3 gcc 1.3e ok (1.912)
i*86-*-freebsdelf4.0 gcc 1.3c ok
(egcs-1.1.2)
i*86-*-freebsdelf3.2 gcc 1.3c ok
for (level = 1; handles; ++level)
{
lt_dlhandle cur = handles;
+ int saw_nonresident = 0;
while (cur)
{
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))
}
}
}
+ /* done if only resident modules are left */
+ if (!saw_nonresident)
+ break;
}
/* close all loaders */