2014-10-09

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

No comments:

Post a Comment

You can use some HTML elements, such as <b>, <i>, <a>, also, some characters need to be entity referenced such as <, > and & Your comment may need to be confirmed by blog author. Your comment will be published under GFDL 1.3 or later license with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.