summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/IPC
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-04-18 23:10:57 +0000
committerKarl Berry <karl@freefriends.org>2017-04-18 23:10:57 +0000
commit40b4b6e177c62a14c166dbba6adf3abc415af4b2 (patch)
tree2996bf29509c806bd8064fb6cf38092c1b375ff8 /Master/tlpkg/tlperl/lib/IPC
parent8e743c86b6872f30b7a35c72aa944455157d4b3f (diff)
tlperl 5.24.1 from siep
git-svn-id: svn://tug.org/texlive/trunk@43914 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/tlperl/lib/IPC')
-rw-r--r--Master/tlpkg/tlperl/lib/IPC/Cmd.pm6
-rw-r--r--Master/tlpkg/tlperl/lib/IPC/Open3.pm10
2 files changed, 12 insertions, 4 deletions
diff --git a/Master/tlpkg/tlperl/lib/IPC/Cmd.pm b/Master/tlpkg/tlperl/lib/IPC/Cmd.pm
index 6a82bdff9bd..4705f044338 100644
--- a/Master/tlpkg/tlperl/lib/IPC/Cmd.pm
+++ b/Master/tlpkg/tlperl/lib/IPC/Cmd.pm
@@ -18,7 +18,7 @@ BEGIN {
$HAVE_MONOTONIC
];
- $VERSION = '0.92';
+ $VERSION = '0.92_01';
$VERBOSE = 0;
$DEBUG = 0;
$WARN = 1;
@@ -142,6 +142,8 @@ sub can_use_ipc_run {
return if IS_WIN98;
### if we don't have ipc::run, we obviously can't use it.
+ local @INC = @INC;
+ pop @INC if $INC[-1] eq '.';
return unless can_load(
modules => { 'IPC::Run' => '0.55' },
verbose => ($WARN && $verbose),
@@ -169,6 +171,8 @@ sub can_use_ipc_open3 {
### IPC::Open3 works on every non-VMS platform, but it can't
### capture buffers on win32 :(
+ local @INC = @INC;
+ pop @INC if $INC[-1] eq '.';
return unless can_load(
modules => { map {$_ => '0.0'} qw|IPC::Open3 IO::Select Symbol| },
verbose => ($WARN && $verbose),
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: