File tree Expand file tree Collapse file tree 1 file changed +4
-8
lines changed Expand file tree Collapse file tree 1 file changed +4
-8
lines changed Original file line number Diff line number Diff line change @@ -354,15 +354,11 @@ sub command_exit_is
354
354
my $h = IPC::Run::start $cmd ;
355
355
$h -> finish();
356
356
357
- # On Windows, the exit status of the process is returned directly as the
358
- # process's exit code, while on Unix, it's returned in the high bits
359
- # of the exit code (see WEXITSTATUS macro in the standard <sys/wait.h>
360
- # header file). IPC::Run's result function always returns exit code >> 8,
361
- # assuming the Unix convention, which will always return 0 on Windows as
362
- # long as the process was not terminated by an exception. To work around
363
- # that, use $h->full_result on Windows instead.
357
+ # Normally, if the child called exit(N), IPC::Run::result() returns N. On
358
+ # Windows, with IPC::Run v20220807.0 and earlier, full_results() is the
359
+ # method that returns N (https://github.com/toddr/IPC-Run/issues/161).
364
360
my $result =
365
- ($Config {osname } eq " MSWin32" )
361
+ ($Config {osname } eq " MSWin32" && $IPC::Run::VERSION <= 20220807.0 )
366
362
? ($h -> full_results)[0]
367
363
: $h -> result(0);
368
364
is($result , $expected , $test_name );
You can’t perform that action at this time.
0 commit comments