summaryrefslogtreecommitdiff
path: root/ext/DynaLoader/DynaLoader.pm
diff options
context:
space:
mode:
Diffstat (limited to 'ext/DynaLoader/DynaLoader.pm')
-rw-r--r--ext/DynaLoader/DynaLoader.pm9
1 files changed, 4 insertions, 5 deletions
diff --git a/ext/DynaLoader/DynaLoader.pm b/ext/DynaLoader/DynaLoader.pm
index 61d9a8566e..6bf0062d12 100644
--- a/ext/DynaLoader/DynaLoader.pm
+++ b/ext/DynaLoader/DynaLoader.pm
@@ -112,12 +112,11 @@ sub bootstrap {
# The .bs file can be used to configure @dl_resolve_using etc to
# match the needs of the individual module on this architecture.
my $bs = $file;
- $bs =~ s/\.$dl_dlext$/\.bs/o; # look for .bs 'beside' the library
- if (-f $bs) {
+ $bs =~ s/(\.\w+)?$/\.bs/; # look for .bs 'beside' the library
+ if (-s $bs) { # only read file if it's not empty
local($osname, $dlsrc) = @Config{'osname','dlsrc'};
- print STDERR "$bs ($osname, $dlsrc)\n" if $dl_debug;
- $@ = "";
- do $bs;
+ print STDERR "BS: $bs ($osname, $dlsrc)\n" if $dl_debug;
+ eval { do $bs; };
warn "$bs: $@\n" if $@;
}