summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>2000-03-01 16:38:48 +0000
committerGurusamy Sarathy <gsar@cpan.org>2000-03-01 16:38:48 +0000
commit228515436ab73df2fc5bb6a3bf2cf5e72ce8bda7 (patch)
tree8d7a5e86fc356d8efeda1d28da40bad212a8dd96
parent579077630923d231795d873e06ff21d06d7753d9 (diff)
downloadperl-228515436ab73df2fc5bb6a3bf2cf5e72ce8bda7.tar.gz
avoid DProf entering dl_unload_file() (from Alan Burlison)
p4raw-id: //depot/perl@5402
-rw-r--r--ext/DynaLoader/DynaLoader_pm.PL3
-rw-r--r--ext/DynaLoader/dlutils.c2
2 files changed, 2 insertions, 3 deletions
diff --git a/ext/DynaLoader/DynaLoader_pm.PL b/ext/DynaLoader/DynaLoader_pm.PL
index 6a3d4a3391..0e0f79263d 100644
--- a/ext/DynaLoader/DynaLoader_pm.PL
+++ b/ext/DynaLoader/DynaLoader_pm.PL
@@ -654,8 +654,7 @@ This function is optional and may not necessarily be provided on all platforms.
If it is defined, it is called automatically when the interpreter exits for
every shared object or library loaded by DynaLoader::bootstrap. All such
library references are stored in @dl_librefs by DynaLoader::Bootstrap as it
-loads the libraries. The files are unloaded in the reverse order in to they
-were initially loaded.
+loads the libraries. The files are unloaded in last-in, first-out order.
This unloading is usually necessary when embedding a shared-object perl (e.g.
one configured with -Duseshrplib) within a larger application, and the perl
diff --git a/ext/DynaLoader/dlutils.c b/ext/DynaLoader/dlutils.c
index 94230856cf..5c6bbea1ac 100644
--- a/ext/DynaLoader/dlutils.c
+++ b/ext/DynaLoader/dlutils.c
@@ -45,7 +45,7 @@ dl_unload_all_files(pTHXo_ void *unused)
PUSHMARK(SP);
XPUSHs(sv_2mortal(dl_libref));
PUTBACK;
- call_sv((SV*)sub, G_DISCARD);
+ call_sv((SV*)sub, G_DISCARD | G_NODEBUG);
FREETMPS;
LEAVE;
}