]> git.vpit.fr Git - perl/modules/Test-Valgrind.git/blobdiff - lib/Test/Valgrind.pm
Don't call dl_unload_file twice on the same libref
[perl/modules/Test-Valgrind.git] / lib / Test / Valgrind.pm
index 7d5ba0a0953b6614b4e9d1fe925e15aea6780e44..d003528be0d3158d2efc541426d7547aa5d05f87 100644 (file)
@@ -18,11 +18,11 @@ Test::Valgrind - Test Perl code through valgrind.
 
 =head1 VERSION
 
-Version 0.06
+Version 0.07
 
 =cut
 
-our $VERSION = '0.06';
+our $VERSION = '0.07';
 
 =head1 SYNOPSIS
 
@@ -139,7 +139,8 @@ sub import {
   $callers = int $callers;
   my $vg = Test::Valgrind::Suppressions::VG_PATH;
   if (!$vg || !-x $vg) {
-   for (split /:/, $ENV{PATH}) {
+   require Config;
+   for (split /$Config::Config{path_sep}/, $ENV{PATH}) {
     $_ .= '/valgrind';
     if (-x) {
      $vg = $_;
@@ -230,6 +231,15 @@ sub import {
  }
 }
 
+END {
+ if ($run and eval { require DynaLoader; 1 }) {
+  for (@DynaLoader::dl_librefs) {
+   next unless defined;
+   undef $_ if DynaLoader::dl_unload_file($_);
+  }
+ }
+}
+
 =head1 CAVEATS
 
 You can't use this module to test code given by the C<-e> command-line switch.
@@ -256,7 +266,7 @@ L<Devel::Leak>, L<Devel::LeakTrace>, L<Devel::LeakTrace::Fast>.
 
 Vincent Pit, C<< <perl at profvince.com> >>, L<http://www.profvince.com>.
 
-You can contact me by mail or on #perl @ FreeNode (vincent or Prof_Vince).
+You can contact me by mail or on C<irc.perl.org> (vincent).
 
 =head1 BUGS