[Blog_users_ml] [質問] plugins ディレクトリにMTPaginate.pl を放り込むとエラーが出る

YAMANISHI Masato blog_users_ml@dropcontrol.com
Thu, 14 Aug 2003 00:10:13 +0900


山西@bird.dip.jp です。

こうくん@なるぱらさん wrote:
>自宅サーバーのpluginsディレクトリにMTPaginate.plを放り込むと
>
>Got an error: Bad plugin filename
>'E:\www\users\NETWAL~1\plugins\MTPaginate.pl' at
>e:\www\users\NETWAL~1\lib/MT.pm line 115.
>
>というエラーが出てしまいます。
	:
>なにか原因が考えられますでしょうか?

おっと、Windows サーバですね。

該当箇所のソースコードをみると次のようになっていてプラグインのパス名を
正規表現でチェックをしています。

            $plugin = File::Spec->catfile($plugin_dir, $plugin);
            if ($plugin =~ /^([-\\\/\@\:\w\.\s]+)$/) {
                $plugin = $1;
            } else {
                die "Bad plugin filename '$plugin'";
            }

こうくん@なるぱらさんの場合、'~' が引っかかっていますね。
if .. の行の ']' の前にでも '~' を入れることでチェックを逃れられますが、
これだけで動作するようになるかどうかは確認していません。
--
山西雅人
mailto:masato@bird.email.ne.jp
http://bird.dip.jp/