[#46908] [ruby-trunk - Bug #7774][Assigned] IFUNC上のbinding呼び出しでSEGV — "ktsj (Kazuki Tsujimoto)" <kazuki@...>

16 messages 2013/02/03

[#47075] [ruby-trunk - Bug #7924][Open] r39232 以降 net/http で正しく reponse を取得出来ないケースがある — "hsbt (Hiroshi SHIBATA)" <shibata.hiroshi@...>

15 messages 2013/02/23

[ruby-dev:47076] [ruby-trunk - Bug #7924] r39232 以降 net/http で正しく reponse を取得出来ないケースがある

From: "kazuhiko (Kazuhiko Shiozaki)" <kazuhiko@...>
Date: 2013-02-23 22:36:07 UTC
List: ruby-dev #47076
Issue #7924 has been updated by kazuhiko (Kazuhiko Shiozaki).


accept-encodingの無指定時に、http.rbのget()でaccept-encodingをつけていて、そのためにgeneric_request.rbが「あ、指定してるんならdecode_content=falseでいいよね」としているのが原因。

accept-encodingの無指定時に"gzip;q=1.0,deflate;q=0.6,identity;q=0.3"をセットするコードが、http.rbのget()とhttp/generic_request.rbのinitialize()の両方にあって、後者は前者の可能性を考慮していない。なので、この問題はputでは起きない。

その二箇所以外にaccept-encodingをセットしているコードはなさそうなので、http.rbのget()から「accept-encodingの無指定時に〜」を除けばなおるはず。
----------------------------------------
Bug #7924: r39232 以降 net/http で正しく reponse を取得出来ないケースがある
https://bugs.ruby-lang.org/issues/7924#change-36837

Author: hsbt (Hiroshi SHIBATA)
Status: Open
Priority: Immediate
Assignee: naruse (Yui NARUSE)
Category: core
Target version: 2.0.0
ruby -v: ruby 2.0.0dev (2013-02-24 trunk 39439) [x86_64-darwin12.2.1]


r39232 以降、tDiary の以下のようなコードが動かなくなりました。

https://github.com/tdiary/tdiary-contrib/blob/master/plugin/flickr.rb#L185

単純に net/http を使用して flickr.com から xml を取得するコードですが、r39232で加えた
変更により、本来 inflate されるべき response.body が gzip の状態のままになっています。

response を inflate するケースの考慮漏れのような気がします。


-- 
http://bugs.ruby-lang.org/

In This Thread