X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Fauthor%2Fhttp-server.t;fp=t%2Fauthor%2Fhttp-server.t;h=2927f18151408d64b1ac5a9113350956a2131a19;hb=4d7d4257076031cc63eaf82ce863e3179fcdbc12;hp=0edba014283f6b1808b28ace93ec761d370ec313;hpb=6b665c03d315e27c593d644ac59eec7926096210;p=catagits%2FCatalyst-Runtime.git diff --git a/t/author/http-server.t b/t/author/http-server.t index 0edba01..2927f18 100644 --- a/t/author/http-server.t +++ b/t/author/http-server.t @@ -77,6 +77,15 @@ rmtree "$FindBin::Bin/../../t/tmp" if -d "$FindBin::Bin/../../t/tmp"; is( $return, 0, 'live tests' ); +# kill 'INT' doesn't exist in Windows, so to prevent child hanging, +# this process will need to commit seppuku to clean up the children. +if ($^O eq 'MSWin32') { + # Furthermore, it needs to do it 'politely' so that TAP doesn't + # smell anything 'dubious'. + require Win32::Process; # core in all versions of Win32 Perl + Win32::Process::KillProcess($$, $return); +} + sub wait_port_timeout { my ($port, $timeout) = @_;