[Gauche-devel-jp] 変換ポートの問題

Back to archive index

Shiro Kawai shiro****@lava*****
2003年 9月 8日 (月) 14:10:08 JST


> (call-with-output-file "temp"
>   (lambda (out)
>     (with-output-to-port (wrap-with-output-conversion out "ISO-2022-JP")
>       (lambda () (print "文字列")))))

このコードだと、conversion portがクローズされる前に
元のportがクローズされてしまうのでまずいです。

元のファイルポートはcall-with-output-fileによって閉じられます。
conversion portはコード内では閉じられていないので、
GCされるタイミングで閉じられます。その時にiso2022jpの
エスケープシーケンスが出力されようとして、エラーになっている
のだと思います。

 (with-output-to-file "temp"
   (lambda () (print "文字列"))
   :encoding "ISO-2022-JP")

でまずい事情がありますか?

--shiro





Gauche-devel-jp メーリングリストの案内
Back to archive index