以下にdiffあるけど、直接ファイルを更新するんじゃなくて、一度テンポラリに書いてから、renameするようにした。
renameシステムコールは最悪失敗しても移動先のファイルが壊れないことをposix仕様として
保証している(多分)ので、diskfullの時も編集前のファイルは壊れない。
データベースで言えばBEGIN~COMMITで囲うようなもん。
http://syunei.dip.jp/~akira/pukiwiki.diff
改造したのは本文のみ、RecentChangeとかは別に気にしてないので深追いせず取り合えず大切なところだけ
0 件のコメント:
コメントを投稿