Bug #3923
closedbad error messages for Winsock (on Win32)
Description
=begin
Winsock関係のErrnoのメッセージが異常です。
例)Errno::EWOULDBLOCK -> 既にパスが置き換えられているドライブ上のディレクトリにドライブを接続しようとしました。
この場合、正しくは「ブロック不可のソケット操作をすぐに完了できませんでした。」です。
理由)WinSock固有のエラーコードをerrnoに変換したまま、strerrorを呼び出しているため。
パッチとテストを添付します。
=end
Files
Updated by usa (Usaku NAKAMURA) about 14 years ago
=begin
お約束ですが、パッチはunified diff形式で出してくれると助かります。
それはさておき、これたぶんVC10だけですよね。
正直なところ、この対処法はかなり気に入らないんですが、どうしようかなあ。
=end
Updated by arton (Akio Tajima) about 14 years ago
=begin
お約束ですが、パッチはunified
diff形式で出してくれると助かります。
すみません。
それはさておき、これたぶんVC10だけですよね。
正直なところ、この対処法はかなり気に入らないんですが、
どうしようかなあ。
encodingの話と合わせて、errnoの変換ついでにmessageもRuby
持ち(BSDの実装あたりからメッセージを拝借)にしたらどう
でしょうか。
Learn more about breast cancer - Pink Ribbon Campaign 2010
http://yj.pn/JAy9L7
=end
Updated by usa (Usaku NAKAMURA) about 14 years ago
- Status changed from Open to Assigned
- Assignee set to usa (Usaku NAKAMURA)
=begin
=end
Updated by usa (Usaku NAKAMURA) about 14 years ago
=begin
こんにちは、なかむら(う)です。
In message "[ruby-dev:42361] Re: [Ruby 1.9-Bug#3923] bad error messages for Winsock (on Win32)"
on Oct.12,2010 12:46:48, artonx@yahoo.co.jp wrote:
encodingの話と合わせて、errnoの変換ついでにmessageもRuby
持ち(BSDの実装あたりからメッセージを拝借)にしたらどう
でしょうか。
そっちの話は完全に別だと思うんですが、自前でメッセージ持つく
らいならUS English指定します...
それでは。¶
U.Nakamura usa@garbagecollect.jp
=end
Updated by usa (Usaku NAKAMURA) about 14 years ago
=begin
逆変換する範囲を、VC10のみ、かつ、追加されたerrnoに絞るようにして
パッチを入れてみました。
要するにVC10のバカヤロウがerrno追加したくせにsyserror()で対応しない
のが悪いのです。ぷんぷん。
(別に規格に反してるとかいうわけじゃないのが余計に腹立たしい)
=end
Updated by usa (Usaku NAKAMURA) about 14 years ago
- Status changed from Assigned to Closed
=begin
r29449 で修正されました(なぜか自動closeされない)
=end