rpms/perl-POE-Component-IRC/devel 0001-apply-fixes-for-rhbz-591215.patch, NONE, 1.1 perl-POE-Component-IRC.spec, 1.26, 1.27

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Author: iarnell

Update of /cvs/pkgs/rpms/perl-POE-Component-IRC/devel
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv25889

Modified Files:
	perl-POE-Component-IRC.spec 
Added Files:
	0001-apply-fixes-for-rhbz-591215.patch 
Log Message:
* Thu May 20 2010 Iain Arnell <iarnell@xxxxxxxxx> 6.14-4
- apply patch for rhbz#591215


0001-apply-fixes-for-rhbz-591215.patch:
 lib/POE/Component/IRC.pm   |   19 +++++++------------
 t/02_behavior/14_newline.t |   16 +++++++++-------
 xt/perlcriticrc_t          |    2 +-
 3 files changed, 17 insertions(+), 20 deletions(-)

--- NEW FILE 0001-apply-fixes-for-rhbz-591215.patch ---
>From 8fec0161383143419d4cc957e001b0b2fc9fa304 Mon Sep 17 00:00:00 2001
From: Iain Arnell <iarnell@xxxxxxxxx>
Date: Thu, 20 May 2010 19:22:35 +0200
Subject: [PATCH] apply fixes for rhbz#591215

cherry-picked 4f46c29376359b3d7c5b5cd400115103fdef9ca8
cherry-picked 675f55cd40ceebbc1bd2f309311a066bed41d869
cherry-picked 9e2a01af6a908f9c1c97431bcbc5f483a7a99e2f
---
 lib/POE/Component/IRC.pm   |   19 +++++++------------
 t/02_behavior/14_newline.t |   16 +++++++++-------
 xt/perlcriticrc_t          |    1 +
 3 files changed, 17 insertions(+), 19 deletions(-)

diff --git a/lib/POE/Component/IRC.pm b/lib/POE/Component/IRC.pm
index 4fe23da..ecaa50c 100644
--- a/lib/POE/Component/IRC.pm
+++ b/lib/POE/Component/IRC.pm
@@ -1038,9 +1038,7 @@ sub onlytwoargs {
 
 # Handler for privmsg or notice events.
 sub privandnotice {
-    my ($kernel, $state, $to) = @_[KERNEL, STATE, ARG0];
-    my $message = join ' ', @_[ARG1 .. $#_];
-    my @messages = split /\n/, $message;
+    my ($kernel, $state, $to, $msg) = @_[KERNEL, STATE, ARG0, ARG1];
     my $pri = $_[OBJECT]->{IRC_CMDS}->{$state}->[CMD_PRI];
 
     $state =~ s/privmsglo/privmsg/;
@@ -1048,7 +1046,7 @@ sub privandnotice {
     $state =~ s/noticelo/notice/;
     $state =~ s/noticehi/notice/;
 
-    if (!defined $to || !defined $message) {
+    if (!defined $to || !defined $msg) {
         warn "The '$state' event requires two arguments\n";
         return;
     }
@@ -1056,9 +1054,7 @@ sub privandnotice {
     $to = join ',', @$to if ref $to eq 'ARRAY';
     $state = uc $state;
 
-    for my $msg (@messages) {
-        $kernel->yield(sl_prioritized => $pri, "$state $to :$msg");
-    }
+    $kernel->yield(sl_prioritized => $pri, "$state $to :$msg");
     return;
 }
 
@@ -1214,14 +1210,14 @@ sub sl_prioritized {
 
     my $now = time();
     $self->{send_time} = $now if $self->{send_time} < $now;
+
+    # if we find a newline in the message, take that to be the end of it
+    $msg =~ s/[\015\012].*//s;
     
     if (bytes::length($msg) > $self->{msg_length} - bytes::length($self->nick_name())) {
         $msg = bytes::substr($msg, 0, $self->{msg_length} - bytes::length($self->nick_name()));
     }
 
-    # if we find a newline in the message, take that to be the end of it
-    $msg =~ s/\n.*//gm;
-    
     if (@{ $self->{send_queue} }) {
         my $i = @{ $self->{send_queue} };
         $i-- while ($i && $priority < $self->{send_queue}->[$i-1]->[MSG_PRI]);
@@ -2188,8 +2184,7 @@ it will be treated as a PART message and dealt with accordingly.
 Sends a public or private message to the nick(s) or channel(s) which
 you specify. Takes 2 arguments: the nick or channel to send a message
 to (use an array reference here to specify multiple recipients), and
-the text of the message to send. If the message contains newlines, it
-will be split up into multiple messages.
+the text of the message to send.
 
 Have a look at the constants in
 L<POE::Component::IRC::Common|POE::Component::IRC::Common> if you would
diff --git a/t/02_behavior/14_newline.t b/t/02_behavior/14_newline.t
index efad9f3..e59998d 100644
--- a/t/02_behavior/14_newline.t
+++ b/t/02_behavior/14_newline.t
@@ -3,16 +3,15 @@ use warnings;
 use lib 't/inc';
 use POE qw(Wheel::SocketFactory);
 use Socket;
-use POE::Component::IRC::State;
-use POE::Component::IRC::Plugin::AutoJoin;
+use POE::Component::IRC;
 use POE::Component::Server::IRC;
 use Test::More tests => 9;
 
-my $bot1 = POE::Component::IRC::State->spawn(
+my $bot1 = POE::Component::IRC->spawn(
     Flood        => 1,
     plugin_debug => 1,
 );
-my $bot2 = POE::Component::IRC::State->spawn(
+my $bot2 = POE::Component::IRC->spawn(
     Flood        => 1,
     plugin_debug => 1,
 );
@@ -89,7 +88,7 @@ sub irc_join {
     my ($sender, $heap, $who, $where) = @_[SENDER, HEAP, ARG0, ARG1];
     my $nick = ( split /!/, $who )[0];
     my $irc = $sender->get_heap();
-    
+
     return if $nick ne $irc->nick_name();
     is($where, '#testchannel', 'Joined Channel Test');
 
@@ -98,10 +97,13 @@ sub irc_join {
 
     $irc->yield(quote => "PRIVMSG $where :one\nPRIVMSG $where :two");
     $irc->yield(privmsg => $where, "foo\nbar");
+    $irc->yield(privmsg => $where, "baz\rquux");
 }
 
 sub irc_public {
-    my ($heap, $msg) = @_[HEAP, ARG2];
+    my ($sender, $heap, $where, $msg) = @_[SENDER, HEAP, ARG1, ARG2];
+    my $irc = $sender->get_heap();
+    my $chan = $where->[0];
 
     $heap->{got_msg}++;
     if ($heap->{got_msg} == 1) {
@@ -111,7 +113,7 @@ sub irc_public {
         is($msg, 'foo', 'Second message');
     }
     elsif ($heap->{got_msg} == 3) {
-        is($msg, 'bar', 'Third message');
+        is($msg, 'baz', 'Third message');
         $bot1->yield('quit');
         $bot2->yield('quit');
     }
diff --git a/xt/perlcriticrc_t b/xt/perlcriticrc_t
index 3bd1ed9..9b1b549 100644
--- a/xt/perlcriticrc_t
+++ b/xt/perlcriticrc_t
@@ -25,3 +25,4 @@ verbose  = 3
 [-Modules::RequireExplicitPackage]
 [-Modules::RequireFilenameMatchesPackage]
 [-Subroutines::RequireFinalReturn]
+[-ControlStructures::ProhibitCascadingIfElse]
-- 
1.7.0.1



Index: perl-POE-Component-IRC.spec
===================================================================
RCS file: /cvs/pkgs/rpms/perl-POE-Component-IRC/devel/perl-POE-Component-IRC.spec,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -p -r1.26 -r1.27
--- perl-POE-Component-IRC.spec	6 May 2010 07:26:53 -0000	1.26
+++ perl-POE-Component-IRC.spec	20 May 2010 18:16:00 -0000	1.27
@@ -11,13 +11,15 @@
 
 Name:           perl-POE-Component-IRC
 Version:        6.14
-Release:        3%{?dist}
+Release:        4%{?dist}
 Summary:        A POE component for building IRC clients
 
 Group:          Development/Libraries
 License:        GPL+ or Artistic
 URL:            http://search.cpan.org/dist/POE-Component-IRC
 Source0: http://search.cpan.org/CPAN/authors/id/H/HI/HINRIK/POE-Component-IRC-%{version}.tar.gz
+# rhbz#591215
+Patch0:         0001-apply-fixes-for-rhbz-591215.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
 BuildArch:      noarch
@@ -74,6 +76,7 @@ is to it. Cool, no?
 
 %prep
 %setup -q -n POE-Component-IRC-%{version}
+%patch0 -p1
 
 # Funky permissions...
 %{_fixperms} *
@@ -114,6 +117,9 @@ rm -rf %{buildroot}
 
 
 %changelog
+* Thu May 20 2010 Iain Arnell <iarnell@xxxxxxxxx> 6.14-4
+- apply patch for rhbz#591215
+
 * Thu May 06 2010 Marcela Maslanova <mmaslano@xxxxxxxxxx> - 6.14-3
 - Mass rebuild with perl-5.12.0
 

--
Fedora Extras Perl SIG
http://www.fedoraproject.org/wiki/Extras/SIGs/Perl
perl-devel mailing list
perl-devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/perl-devel

[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Legacy Announce]     [Fedora PHP Devel]     [Kernel Devel]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Big List of Linux Books]     [Gimp]     [Yosemite Information]
  Powered by Linux