カテゴリ | |
---|---|
サマリ | PukiWiki1.3.3で、これはBracketNameじゃないの? |
バージョン | 1.3.3 |
投稿者 | KsK |
状態 | 完了 |
投稿日 | 2003-01-01 (WED) 13:48:05 |
PukiWiki1.3.3に更新してみました。すると例えば次のBracketName??が有効になりません。1.3.2の時は大丈夫だったのですが・・・。
何故だか分かりませんが、$BracketNameを以下のように修正すると直るようです。後方参照のバグかもしれません。調査します。
init.php -$BracketName = '\[\[(?!\/|\.\/|\.\.\/)(:?[^\s\]#&<>":]+:?)(?<!\/)\]\]'; +$BracketName = '\[\[(?!\/|\.\/|\.\.\/)(:?[^\s\]#&<>":]+:?)\]\]';
今さらのように気づいたのですが、「ページ名が/ ./ ../(半角)で始まる 」のは無効だという仕様になっていたのですね。どうもすいません。
えーと。ページとして存在するのが禁止されているだけで、[[ ./ほげ]]と書くのを禁止しているわけではないです。
あ/い/12345 とかも(全角の数字です)新規作成からはじかれますね。これも仕様でしたっけ?
仕様じゃないですね。(?<!\/)が悪さをしています。上の修正で回避は出来ますが…なんでだろう。
とりあえず、以下のようにすると仕様(ページ名末尾の'/'を禁止)どおりに、かつ正常に動作するようです。試してみてください。
init.php -$BracketName = '\[\[(?!\/|\.\/|\.\.\/)(:?[^\s\]#&<>":]+:?)(?<!\/)\]\]'; +$BracketName = '\[\[(?!\/|\.\/|\.\.\/)(:?[^\s\]#&<>":]+:?)\]\](?<!\/\]\])';
preg_xxx関数はマルチバイト対応ではない…?まずい。根本から間違っているような気が。
PukiWiki 1.3.4で修正されています。