summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/IPC/Open3.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/tlperl/lib/IPC/Open3.pm')
-rw-r--r--Master/tlpkg/tlperl/lib/IPC/Open3.pm10
1 files changed, 7 insertions, 3 deletions
diff --git a/Master/tlpkg/tlperl/lib/IPC/Open3.pm b/Master/tlpkg/tlperl/lib/IPC/Open3.pm
index 7c7e9b532ad..e5924a30a65 100644
--- a/Master/tlpkg/tlperl/lib/IPC/Open3.pm
+++ b/Master/tlpkg/tlperl/lib/IPC/Open3.pm
@@ -9,7 +9,7 @@ require Exporter;
use Carp;
use Symbol qw(gensym qualify);
-$VERSION = '1.18';
+$VERSION = '1.20';
@ISA = qw(Exporter);
@EXPORT = qw(open3);
@@ -280,7 +280,7 @@ sub _open3 {
return 1 if ($_[0] eq '-');
exec @_ or do {
local($")=(" ");
- croak "$Me: exec of @_ failed";
+ croak "$Me: exec of @_ failed: $!";
};
} and do {
close $stat_w;
@@ -412,7 +412,11 @@ sub spawn_with_handles {
} else {
$pid = eval { system 1, @_ }; # 1 == P_NOWAIT
}
- push @errs, "IO::Pipe: Can't spawn-NOWAIT: $!" if !$pid || $pid < 0;
+ if($@) {
+ push @errs, "IO::Pipe: Can't spawn-NOWAIT: $@";
+ } elsif(!$pid || $pid < 0) {
+ push @errs, "IO::Pipe: Can't spawn-NOWAIT: $!";
+ }
}
# Do this in reverse, so that STDERR is restored first: