- 追加された行はこの色です。
- 削除された行はこの色です。
*bugtrack.inc.php ページ名の問題など
-ページ: BugTrack
-投稿者: [[ぱんだ]]
-優先順位: 普通
-状態: 提案
-カテゴリー: プラグイン
-投稿日: 2002-12-18 (水) 15:03:45
-バージョン:
**メッセージ
+bugtrack.inc.phpをBracketNameなページに置くと、BugTrack追加時に不正なページをつくってしまう
+bugtrack.inc.phpをBracketNameなページに置くと、BugTrack追加時に不正なページを作ってしまう
+ページ名にブラケットをつけて投稿すると不正なページを作ってしまう
+ページ名が指定され、すでにそのページが存在すると、問答無用でページ内容を上書きする
--バックアップや差分を作らないので、悲劇的な事故が起こる可能性あり
修正案
***修正案
-plugin_bugtrack_write()内で
$base = strip_bracket($base);
$pagename = strip_bracket($pagename);
とする
-ページ名が指定され、そのページがすでに存在するときは、デフォルトのページ名($base/...)に本文を書き込むようにする
else {
if(!preg_match("/^$WikiName$$/",$pagename)) {
$pagename = "[[$pagename]]";
}
+ if (is_page($pagename))
+ $pagename = $page;
+ else
+ file_write(DATA_DIR,$page,"move to $pagename");
- file_write(DATA_DIR,$page,"move to $pagename");
file_write(DATA_DIR,$pagename,$postdata);
}
else {
if(!preg_match("/^$WikiName$$/",$pagename)) {
$pagename = "[[$pagename]]";
}
+ if (is_page($pagename))
+ $pagename = $page;
+ else
+ file_write(DATA_DIR,$page,"move to $pagename");
- file_write(DATA_DIR,$page,"move to $pagename");
file_write(DATA_DIR,$pagename,$postdata);
}
----
-OK でした。 -- [[upk]] SIZE(10){2002-12-18 (水) 16:59:40}
#comment