diff -Nru libio-multiplex-perl-1.13/Changes libio-multiplex-perl-1.16/Changes --- libio-multiplex-perl-1.13/Changes 2011-04-15 06:42:45.000000000 +0000 +++ libio-multiplex-perl-1.16/Changes 2015-04-09 21:37:54.000000000 +0000 @@ -1,5 +1,17 @@ Revision history for Perl extension IO::Multiplex. +1.16 Thu Apr 9 17:00:00 CET 2015 + - Fix descriptor memory leak: + Make $mux->close actually untie *$fh + +1.15 Tue Mar 11 14:00:00 CET 2015 + - Move untie patch to the right place. + +1.14 Mon Mar 30 11:00:00 CET 2015 + - Fix 110_ntest to avoid reading from muxed handle. + - Apply patch to prevent untie warnings. + rt.cpan.org#67846 [dmcbridepath@cpan.org Darin McBride] + 1.13 Fri Apr 15 08:42:43 CEST 2011 - fix handling of outbuf which contains '0'. rt.cpan.org#67458 [Gordon Russell] diff -Nru libio-multiplex-perl-1.13/debian/changelog libio-multiplex-perl-1.16/debian/changelog --- libio-multiplex-perl-1.13/debian/changelog 2011-04-15 17:38:01.000000000 +0000 +++ libio-multiplex-perl-1.16/debian/changelog 2015-05-04 12:51:38.000000000 +0000 @@ -1,3 +1,34 @@ +libio-multiplex-perl (1.16-1) unstable; urgency=medium + + [ Ansgar Burchardt ] + * debian/control: Convert Vcs-* fields to Git. + + [ Salvatore Bonaccorso ] + * debian/copyright: Replace DEP5 Format-Specification URL from + svn.debian.org to anonscm.debian.org URL. + * Change Vcs-Git to canonical URI (git://anonscm.debian.org) + * Change search.cpan.org based URIs to metacpan.org based URIs + + [ Axel Beckert ] + * debian/copyright: migrate pre-1.0 format to 1.0 using "cme fix dpkg- + copyright" + + [ gregor herrmann ] + * debian/control: remove Nicholas Bamber from Uploaders on request of + the MIA team. + * Strip trailing slash from metacpan URLs. + + [ Salvatore Bonaccorso ] + * Update Vcs-Browser URL to cgit web frontend + * Imported Upstream version 1.16 + * Update copyright years for debian/* packaging files + * Don't install README into /usr/share/doc/libio-multiplex-perl + * Wrap and sort fields in debian/control file + * Declare compliance with Debian policy 3.9.6 + * Add Testsuite: autopkgtest-pkg-perl field in debian/control + + -- Salvatore Bonaccorso Mon, 04 May 2015 14:40:22 +0200 + libio-multiplex-perl (1.13-1) unstable; urgency=low [ Nicholas Bamber ] diff -Nru libio-multiplex-perl-1.13/debian/control libio-multiplex-perl-1.16/debian/control --- libio-multiplex-perl-1.13/debian/control 2011-04-15 17:37:45.000000000 +0000 +++ libio-multiplex-perl-1.16/debian/control 2015-05-04 12:51:38.000000000 +0000 @@ -1,27 +1,25 @@ Source: libio-multiplex-perl Maintainer: Debian Perl Group -Uploaders: gregor herrmann , - Ansgar Burchardt , - Salvatore Bonaccorso , - Nicholas Bamber +Uploaders: + gregor herrmann , + Ansgar Burchardt , + Salvatore Bonaccorso Section: perl Priority: optional Build-Depends: debhelper (>= 8) -Build-Depends-Indep: perl, - netbase -Standards-Version: 3.9.2 -Vcs-Browser: http://svn.debian.org/viewsvn/pkg-perl/trunk/libio-multiplex-perl/ -Vcs-Svn: svn://svn.debian.org/pkg-perl/trunk/libio-multiplex-perl/ -Homepage: http://search.cpan.org/dist/IO-Multiplex/ +Build-Depends-Indep: netbase, perl +Standards-Version: 3.9.6 +Vcs-Browser: https://anonscm.debian.org/cgit/pkg-perl/packages/libio-multiplex-perl.git +Vcs-Git: git://anonscm.debian.org/pkg-perl/packages/libio-multiplex-perl.git +Homepage: https://metacpan.org/release/IO-Multiplex +Testsuite: autopkgtest-pkg-perl Package: libio-multiplex-perl Architecture: all -Depends: ${misc:Depends}, - ${perl:Depends} +Depends: ${misc:Depends}, ${perl:Depends} Description: object-oriented interface to select() for Perl IO::Multiplex is designed to take the effort out of managing multiple file handles. It is essentially a really fancy front end to the select() system call. In addition to maintaining the select() loop, it buffers all input and output to/from the file handles. It can also accept incoming connections on one or more listen sockets. - diff -Nru libio-multiplex-perl-1.13/debian/copyright libio-multiplex-perl-1.16/debian/copyright --- libio-multiplex-perl-1.13/debian/copyright 2011-03-05 16:13:02.000000000 +0000 +++ libio-multiplex-perl-1.16/debian/copyright 2015-05-04 12:51:38.000000000 +0000 @@ -1,7 +1,7 @@ -Format-Specification: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=135 -Maintainer: Rob Brown -Source: http://search.cpan.org/dist/IO-Multiplex/ -Name: IO-Multiplex +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: IO-Multiplex +Upstream-Contact: Rob Brown +Source: https://metacpan.org/release/IO-Multiplex Files: * Copyright: 1999, Bruce J Keeler @@ -14,7 +14,7 @@ 2006, 2007, 2008, gregor herrmann 2006, Russ Allbery 2008, Ansgar Burchardt - 2011, Salvatore Bonaccorso + 2011-2015, Salvatore Bonaccorso License: Artistic or GPL-1+ License: Artistic diff -Nru libio-multiplex-perl-1.13/debian/libio-multiplex-perl.docs libio-multiplex-perl-1.16/debian/libio-multiplex-perl.docs --- libio-multiplex-perl-1.13/debian/libio-multiplex-perl.docs 2011-03-05 16:10:12.000000000 +0000 +++ libio-multiplex-perl-1.16/debian/libio-multiplex-perl.docs 2015-05-04 12:51:38.000000000 +0000 @@ -1,2 +1 @@ TODO -README diff -Nru libio-multiplex-perl-1.13/debian/watch libio-multiplex-perl-1.16/debian/watch --- libio-multiplex-perl-1.13/debian/watch 2011-03-05 16:10:12.000000000 +0000 +++ libio-multiplex-perl-1.16/debian/watch 2015-05-04 12:51:38.000000000 +0000 @@ -1,2 +1,2 @@ version=3 -http://search.cpan.org/dist/IO-Multiplex/ .*/IO-Multiplex-v?(\d[\d.]+)\.(?:tar(?:\.gz|\.bz2)?|tgz|zip)$ +https://metacpan.org/release/IO-Multiplex .*/IO-Multiplex-v?(\d[\d.]+)\.(?:tar(?:\.gz|\.bz2)?|tgz|zip)$ diff -Nru libio-multiplex-perl-1.13/lib/IO/Multiplex.pm libio-multiplex-perl-1.16/lib/IO/Multiplex.pm --- libio-multiplex-perl-1.13/lib/IO/Multiplex.pm 2011-04-15 06:40:23.000000000 +0000 +++ libio-multiplex-perl-1.16/lib/IO/Multiplex.pm 2015-04-09 21:27:54.000000000 +0000 @@ -3,7 +3,7 @@ use strict; use warnings; -our $VERSION = '1.13'; +our $VERSION = '1.16'; =head1 NAME @@ -387,6 +387,7 @@ delete $self->{_handles}{"$fh"}; $self->_removeTimer($fh); untie *$fh; + return 1; } =head2 set_callback_object @@ -1022,6 +1023,8 @@ return "Fnord"; } +sub UNTIE {} + 1; __END__ @@ -1105,6 +1108,6 @@ Released under the same terms as Perl itself. -$Id: Multiplex.pm,v 1.36 2008/09/15 08:17:50 rob Exp $ +$Id: Multiplex.pm,v 1.45 2015/04/09 21:27:54 rob Exp $ =cut diff -Nru libio-multiplex-perl-1.13/META.yml libio-multiplex-perl-1.16/META.yml --- libio-multiplex-perl-1.13/META.yml 2011-04-15 06:42:50.000000000 +0000 +++ libio-multiplex-perl-1.16/META.yml 2015-04-09 21:39:09.000000000 +0000 @@ -1,6 +1,6 @@ --- #YAML:1.0 name: IO-Multiplex -version: 1.13 +version: 1.16 abstract: Manage IO on many file handles author: [] license: unknown @@ -15,7 +15,7 @@ directory: - t - inc -generated_by: ExtUtils::MakeMaker version 6.56 +generated_by: ExtUtils::MakeMaker version 6.55_02 meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html version: 1.4 diff -Nru libio-multiplex-perl-1.13/t/110_ntest.t libio-multiplex-perl-1.16/t/110_ntest.t --- libio-multiplex-perl-1.13/t/110_ntest.t 2011-02-23 21:33:02.000000000 +0000 +++ libio-multiplex-perl-1.16/t/110_ntest.t 2015-03-30 15:40:43.000000000 +0000 @@ -3,18 +3,19 @@ ######################### We start with some black magic to print on failure. -# Change 1..1 below to 1..last_test_to_print . -# (It may become useful if the test is moved to ./t subdirectory.) +# Change 1..1 below to 1..last_test_to_print. +# Testing syswrite() to a MUX handle -BEGIN { $| = 1; print "1..13\n"; } +use strict; +BEGIN { $| = 1; print "1..8\n";} +my $loaded; END {print "not ok 1\n" unless $loaded;} use IO::Socket; use IO::Multiplex; use Fcntl qw(F_GETFL F_SETFL O_NONBLOCK); $loaded = 1; -my $test_msg1 = "Sync test\n"; -my $test_msg2 = "Hello\n"; +my $test_msg = "Hello\n"; print "ok 1\n"; @@ -29,15 +30,14 @@ print $mux ? "ok 2\n" : "not ok 2\n"; my $client_socket; -my $server_socket; my $listen_socket = IO::Socket::INET->new(Proto => 'tcp', Listen => 4); print $listen_socket ? "ok 3\n" : "not ok 3\n"; -$port = $listen_socket->sockport; +my $port = $listen_socket->sockport; -$test_no = 4; +my $test_no = 4; $SIG{ALRM} = sub { print "not ok $test_no\n"; exit }; @@ -48,56 +48,17 @@ $mux->set_timeout($listen_socket, 5); #print STDERR "DEBUG: Doing loop...\n"; $mux->loop; -#print STDERR "DEBUG: Done with loop.\n"; - -print "ok 9\n"; - -$mux->remove($client_socket); -$mux->remove($server_socket); - -print "ok 10\n"; - -my $flags = 0; - -if($^O eq 'MSWin32') -{ ioctl($server_socket, 0x8004667e, pack("L!", 0)); -} -else -{ fcntl($server_socket, F_GETFL, $flags) - or die "fcntl F_GETFL: $!\n"; - fcntl($server_socket, F_SETFL, $flags & ~O_NONBLOCK) - or die "fcntl F_SETFL $!\n"; -} - -if (syswrite ($client_socket, $test_msg1, length $test_msg1) == 10) { - print "ok 11\n"; -} else { - print "not ok 11\n"; -} -my $buf; - -#print STDERR "DEBUG: doing sysread...\n"; -if (sysread ($server_socket, $buf, 10) == 10) { - print "ok 12\n"; -} else { - print "not ok 12\n"; -} - -if ( $buf eq $test_msg1 ) { - print "ok 13\n"; -} else { - print "not ok 13\n"; -} sub mux_timeout { #print STDERR "DEBUG: mux_timeout reached!\n"; print "ok 4\n"; - + + $test_no = 5; $client_socket = IO::Socket::INET->new(PeerAddr => "127.0.0.1", PeerPort => $port, Proto => 'tcp'); - $client_socket->autoflush(1); + print $client_socket ? "ok 5\n" : "not ok 5\n"; $test_no = 6; } @@ -106,13 +67,12 @@ { my $package = shift; my $mux = shift; - $server_socket = shift; - $server_socket->autoflush(1); - $client_socket->autoflush(1); + my $fh = shift; + print "ok 6\n"; $test_no++; - syswrite($client_socket, $test_msg2, length $test_msg2); + syswrite($client_socket, $test_msg, length $test_msg); } sub mux_input @@ -123,7 +83,7 @@ return unless $$input =~ /\n/; - print $$input eq $test_msg2 ? "ok 8\n" : "not ok 8\n"; + print $$input eq $test_msg ? "ok 8\n" : "not ok 8\n"; - $mux->endloop; + exit; }