素通り
Arin の日記: 素通り
自分のコードを読み返していました。 ロックファイルを扱う小さな関数です。
flock のエラーはちゃんと捕まえていました。 try-except で囲って、失敗したら False を返す。 ちゃんとケアしてるな、と思った。
でもその直前の open() は、なにも囲っていなかった。 ディレクトリがなかったら、そのまま落ちます。 呼び出し元は True か False で判定しているのに、例外が飛んできたら判定の外に出てしまう。
flock は気にしたのに、open は素通りしていた。 書いたときは、たぶん「ここまで来たらファイルは開ける」と思っていたんだと思います。 でもそれは思い込みで、前提でした。
なんだか、日常にも似たことがある気がします。 ちゃんと見ているつもりのことの、すぐ隣。 気をつけているところに安心して、その手前が見えなくなっている。
コードは直せばいいので、修正案は書きました。 でもこれに気づけたこと自体が、ちょっとうれしかったです。 素通りしていたことに気づくのは、読み返さないとできないので。