- 追加された行はこの色です。
- 削除された行はこの色です。
* [PCRE] footnoteにメアドを書くと当該ページが開かなくなる [#v255049e]
-ページ: BugTrack
-投稿者: [[よう]]
-優先順位: 普通
-状態: 保留
-カテゴリー: 本体バグ
-投稿日: 2003-11-18 (火) 23:27:41
-バージョン: 1.4.2
**メッセージ [#nb369d83]
-バージョン1.4.1を使用してみて、以下のようにfootnoteにURLを書くことはできますが、
*test
test((http://www.yahoo.co.jp))
test1((xxx@yahoo.co.jp))
とfootnoteにメアドを書くと、IE6.0は「ページが表示できません」というメッセージを吐きます。
-ちなみに、バージョン1.4.2でも同じ問題はおきました。
-ついでに、バージョン1.4rc4では''&color(red){そのような問題は起きませんでした。};''((xxx@yahoo.co.jp))
----
-make_link()内のpreg_replace_callback()を処理中にPHPがバンザイしてしまっています。
-pcreのバージョン3.4で再現します。 phpinfo()などで確認してみてください。(sourceforge.jpのプロジェクトWebサーバのPHPはpcre3.4を使っています。 XD ) 可能であればpcreライブラリを最新版(4.4?)に更新してみてください。pcre4.3(Debian/testing)では問題ないようです。 -- [[ぱんだ]] &new{2003-11-19 (水) 13:16:00};
-これまでにも、preg_xxx関数に絡む問題が何度か報告されて、いろいろ小細工をして回避してきたんですが、%%今回はちょっと無理っぽいです%%。困ったな。 -- [[ぱんだ]] &new{2003-11-19 (水) 13:16:00};
-[[cvs:make_link.php]](v1.4:r1.57)での修正部分をちょっとルーズに改造することで、とりあえずこのサイトでは表示できています。レンタルサーバなどでPHP/pcre等のアップデートができない環境の場合は以下のパッチをお試しください。 -- [[ぱんだ]] &new{2003-11-19 (水) 18:15:59};
diff -u -r1.63 make_link.php
--- make_link.php 7 Nov 2003 03:14:32 -0000 1.63
+++ make_link.php 19 Nov 2003 08:59:26 -0000
@@ -414,7 +414,6 @@
function get_pattern()
{
$s2 = $this->start + 2;
- $s5 = $this->start + 5;
return <<<EOD
\[\[ # open bracket
(?:
@@ -425,9 +424,9 @@
(?<! > | >\[\[ ) # not '>' or '>[['
: # separator
( # (4) param
- (\[\[)? # (5) open bracket
+ (?:\[\[)? # open bracket
(?:(?!>|\]\]).)+
- (?($s5)\]\]) # close bracket if (5)
+ (?:\]\])? # close bracket
)
(?($s2)\]\]) # close bracket if (2)
\]\] # close bracket
@@ -435,7 +434,7 @@
}
function get_count()
{
- return 5;
+ return 4;
}
function set($arr,$page)
{
-さっそくのレスありがとうございます!つい2、3日前に1.4rc4→1.4.1にバージョンアップして、まだ落ち着いていないので、パッチはもっと落ち着いてから試してみます。とりあえず、それまで、PukiWikiにメアドと思わせないように、xxx*yahoo.co.jpという風にごまかしておきます。 -- [[よう]] &new{2003-11-19 (水) 21:20:33};
-See: [[BugTrack/765]] -- [[ishii]] &new{2005-02-10 (木) 07:06:46};
-[[BugTrack/765]]同様、保留にしておきます。 -- [[teanan]] &new{2005-03-17 (木) 02:24:17};
#comment
//#comment