diff -urN tiarra-20031117/ChangeLog tiarra-20040114/ChangeLog --- tiarra-20031117/ChangeLog 2003-11-17 10:27:48.000000000 +0900 +++ tiarra-20040114/ChangeLog 2004-01-16 19:17:23.000000000 +0900 @@ -1,3 +1,13 @@ +2004-01-14 phonohawk + + * main/Mask.pm: + マスクから作った正規表現をqrでコンパイルする際、 + iフラグを付け忘れて大文字小文字の区別が*されていた*ので修正。 + + * main/IRCMessage.pm (_parse): + 空文字列については文字コード変換処理を明示的に省略する。 + Unicode::JapaneseにはISO-2022-JP→UTF-8変換において空文字列を"\x00"にしてしまう問題あり。 + 2003-11-17 Topia * tiarra: enhancement. @@ -1058,7 +1068,7 @@ * これ以前のログは書いていません。 -# Id: $Id: ChangeLog,v 1.120 2003/11/17 01:27:19 topia Exp $ -# Author: $Author: topia $ -# Date: $Date: 2003/11/17 01:27:19 $ -# Revision: $Revision: 1.120 $ +# Id: $Id: ChangeLog,v 1.121 2004/01/14 14:48:35 admin Exp $ +# Author: $Author: admin $ +# Date: $Date: 2004/01/14 14:48:35 $ +# Revision: $Revision: 1.121 $ diff -urN tiarra-20031117/main/IRCMessage.pm tiarra-20040114/main/IRCMessage.pm --- tiarra-20031117/main/IRCMessage.pm 2003-11-17 10:27:48.000000000 +0900 +++ tiarra-20040114/main/IRCMessage.pm 2004-01-16 19:17:24.000000000 +0900 @@ -1,5 +1,5 @@ # ----------------------------------------------------------------------------- -# $Id: IRCMessage.pm,v 1.15 2003/10/24 15:52:29 admin Exp $ +# $Id: IRCMessage.pm,v 1.16 2004/01/14 14:48:35 admin Exp $ # ----------------------------------------------------------------------------- # IRCMessageはIRCのメッセージを表わすクラスです。実際のメッセージはUTF-8で保持します。 # 生のメッセージのパース、シリアライズ、そしてメッセージの生成をサポートします。 @@ -137,7 +137,14 @@ my $unicode = new Unicode::Japanese; my $add_command_or_param = sub { my $value_raw = shift; - my $value = $unicode->set($value_raw,$encoding)->utf8; + my $value = do { + if (length ($value_raw) == 0) { + ''; + } + else { + $unicode->set($value_raw,$encoding)->utf8; + } + }; if ($this->[COMMAND]) { # commandはもう設定済み。次はパラメータだ。 diff -urN tiarra-20031117/main/Mask.pm tiarra-20040114/main/Mask.pm --- tiarra-20031117/main/Mask.pm 2003-11-17 10:27:48.000000000 +0900 +++ tiarra-20040114/main/Mask.pm 2004-01-16 19:17:24.000000000 +0900 @@ -1,5 +1,5 @@ # ----------------------------------------------------------------------------- -# $Id: Mask.pm,v 1.12 2003/09/22 18:02:06 admin Exp $ +# $Id: Mask.pm,v 1.13 2003/12/31 05:39:35 admin Exp $ # ----------------------------------------------------------------------------- # $Clovery: tiarra/main/Mask.pm,v 1.10 2003/07/24 03:08:26 topia Exp $ package Mask; @@ -110,7 +110,7 @@ $work = make_regex($work); } - if ($str =~ m/$work/i) { + if ($str =~ m/$work/) { # マッチした $matched = $include; return $matched if $match_type == 1; @@ -246,7 +246,7 @@ $regex =~ s/\\\*/\.\*/g; $regex = "^$regex\$"; - my $compiled = qr/$regex/; + my $compiled = qr/$regex/i; push @cache_keys, $str; $cache_table{$str} = $compiled;