OpenBSD、headに37年前から存在したBill Joyのバグの修正に22年前のKeith Bosticの変更を適用
src/usr.bin/head/head.c - view - 1.18
Bill Joyが1977年8月24日にもたらし、1978年3月9日の1BSDのリリースに存在していた37年前のバグを、Keith Bosticの22年前の修正を4.4BSDからマージ(マジだぜ)
当時のCSRG SCCSコミットメッセージ
^As 00009/00006/00145
^Ad D 5.7 92/03/04 14:35:42 bostic 9 8
^Ac can't use freopen; example is "date | head file1 /dev/stdin"
Bill Joyのコードは、読み込むべきファイルを、stdinをストリームとしてfreopenすることにより、getcharで指定のファイルを読むこむものだが、修正後は、真面目に新しいファイルハンドルを得て、getcで読み込んでいる。
なんだか大昔のおおらかなコードの書き方を見た気がする。
ドワンゴ広告
この記事はドワンゴ勤務中に書いた。
なぜか社内で例外指定について聞かれたので、後で歴史をまとめておく。
ドワンゴは本物のC++プログラマーを募集しています。
CC BY-ND 4.0: Creative Commons — Attribution-NoDerivatives 4.0 International — CC BY-ND 4.0