From: Paul D Weaver Date: Tue, 6 Mar 2012 19:36:21 +0000 (-0500) Subject: Close RT process when done X-Git-Url: https://sipb.mit.edu/gitweb.cgi/snippets/.git/commitdiff_plain/803a4d3d806ab6615bf814ddf4a29ae30b139482?hp=83cedfd65c1c6b0dd70058dfed7c78424f7212f7 Close RT process when done --- diff --git a/rt/BarnOwl/lib/BarnOwl/Module/RT.pm b/rt/BarnOwl/lib/BarnOwl/Module/RT.pm index febf584..95b51a5 100644 --- a/rt/BarnOwl/lib/BarnOwl/Module/RT.pm +++ b/rt/BarnOwl/lib/BarnOwl/Module/RT.pm @@ -107,12 +107,15 @@ sub run_rt_command{ my @args = ("athrun","tooltime","rt"); push (@args, @_); local(*IN, *OUT, *ERR); - open3(*IN, *OUT, *ERR, @args) || die("RT threw $!"); + my $pid = open3(*IN, *OUT, *ERR, @args) || die("RT threw $!"); close(*IN); my $out = do { local $/; }; close(*OUT); $out .= do { local $/; }; close(*ERR); + + waitpid( $pid, 0 ); + if (($out =~ tr/\n//) eq 1){ return $out; }