Subject: | RFC: Patch for fixing _write on invalid objects (Debian bug#746804) |
Date: | Wed, 14 Jan 2015 05:59:17 +0000 |
To: | bug-IPC-Run [...] rt.cpan.org |
From: | ppm <ppm.floss [...] gmail.com> |
Dear Maintainer,
I have submitted the attached patch for the Debian bug# 746804. You can
see the whole conversation here
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=746804
The attached patch will fix the issue without breaking any existing unit
test case. Can someone please review and merge it in upstream.
Please let me know if you need any more details.
Thanks,
Partha
Description: Patch for fixing _write on invalid objects
Origin: vendor
Bug-Debian: http://bugs.debian.org/746804
Author: Partha Pratim Mukherjee <ppm.floss@gmail.com>
--- a/lib/IPC/Run.pm
+++ b/lib/IPC/Run.pm
@@ -2465,8 +2465,14 @@ sub _open_pipes {
}
_debug_desc_fd( 'writing to', $pipe ) if _debugging_details;
- my $c = _write( $pipe->{FD}, $$in_ref );
- substr( $$in_ref, 0, $c, '' );
+ if (length $$in_ref && $$in_ref) {
+ my $c = _write( $pipe->{FD}, $$in_ref );
+ substr( $$in_ref, 0, $c, '' );
+ } else {
+ $self->_clobber( $pipe );
+ return undef;
+ }
+
return 1;
};
## Output filters are the first filters