Perl 5.8.0

はてなのウェブマスターにも質問したんだけど、CGI.pm でファイルのアップロードが出来ない。で、出来ない環境で共通しているのは Perl のバージョンが 5.8.0。

CGI.pm をいじって、どこがおかしいのか調べてみたんだけど、送られてきたファイルの中身を一時ファイルに書き出すところが原因らしい。

ちゃんと一時ファイル自体は作られるけど、そのファイルに対する print の実行結果が反映されず、いつまで経っても空のファイル。自分の CGI プログラムからは、中身が空のファイルハンドルに対して読み出そうとするので、結果、アップロードファイルの中身は空になってしまう。

一時ファイルのオープン自体に失敗しているのなら、ディレクトリのパーミッションとか考えるんだけど、オープンに成功していて、ちゃんとファイルが作成されるのも確認できるし、いったい何が何だか...。