잠겨 있는 페이지를 삭제 또는 이름을 변경할 때 lock 도 같이 처리
- lock 이 걸려 있는 페이지를 관리자가 삭제할 때, lock 화일은 삭제되지 않고 그대로 남아 있는 문제가 있었다.
- 마찬가지로, lock 이 걸려 있는 페이지의 이름을 변경할 경우, lock 화일이 그대로 남아서, 옛 이름의 페이지는 lock 만 남아있고, 새 이름의 페이지는 반대로 lock 이 걸려 있지 않게 되는 문제가 있었다.
- wiki.pl 의 페이지삭제와 페이지이름변경 루틴에 lock 에 대한 처리를 삽입하여 해결
- 부작용: 알려진 것 없음
-
sub DeletePage {
...
$fname = $KeepDir . "/" . &GetPageDirectory($page) . "/$page.kp";
unlink($fname) if (-f $fname);
$fname = &GetLockedPageFile($page);
unlink($fname) if (-f $fname);
unlink($IndexFile) if ($UseIndex);
...
}
-
sub RenamePage {
...
rename($oldkeep, $newkeep);
unlink($IndexFile) if ($UseIndex);
my ($oldlock, $newlock);
$oldlock = &GetLockedPageFile($old);
if (-f $oldlock) {
$newlock = &GetLockedPageFile($new);
rename($oldlock, $newlock) || die "error while renaming lock";
}
&EditRecentChanges(2, $old, $new) if ($doRC);
if ($doText) {
...
}
위키위키분류