Feature #2060
closedDLをCからRubyに変換する事を勧めます
Description
=begin
DLをCからRubyに変換すれば良いと思ったので、変換しました。CからRubyに変換後のパッチとそのテストを送ります。
このパッチを受け入れてもらえるのなら、これからもっとCからRubyに変換をするつもりです。
宜しくお願いします。
=end
Files
Updated by naruse (Yui NARUSE) about 16 years ago
- Status changed from Open to Feedback
=begin
ちょうどRedmineの不調時で、MLを全く拾えてないんですが、とりあえず、これは[ruby-dev:39249] です。
FFI絡みの最新の議論は [ruby-core:26102] にあります。
このチケットで何か議論し残したことはありますか?
=end
Updated by tenderlovemaking (Aaron Patterson) almost 16 years ago
=begin
こんにちは。私は10月24日以降、正式にDLのmaintainerに認可され、私に変更の権限が与えられましたので、よろしくお願いします。
それと、この件に関しては、私としては、DL ticketを打ち切りにした方が良いと思います。
=end
Updated by naruse (Yui NARUSE) almost 16 years ago
=begin
AaronさんにRedmineのDeveloper権限を与えておきました。
これでticketをcloseしたりrejectしたりできます。
=end
Updated by tenderlovemaking (Aaron Patterson) almost 16 years ago
- Status changed from Feedback to Closed
=begin
Developer権限を与えてくださってありがとうございます。
では、先にお伝えした通り、早速closeします。
=end
Updated by mame (Yusuke Endoh) almost 16 years ago
=begin
遠藤です。
2009年9月9日12:57 Tanaka Akira akr@fsij.org:
このテストを取り入れた後、test-all が SEGV するようになっています。
http://www.rubyist.net/~akr/chkbuild/debian/ruby-trunk/log/20090908T095209.log.txt.gz
test/dl/test_cptr.rb だけでも再現するようです。
ruby_xmalloc で確保した領域を、libc の free で解放することは許される
のでしょうか。dynamic loading の仕様が許すかどうかはわかりませんが、
少なくとも ruby としては ruby_xfree で解放することを意図していると
思います。
落ちる原因がそれかどうかはわかりませんが、このテストはそういうことを
しています。
CPtr の free に ruby_xfree を与えれば動くかもしれませんが、free には
ruby_xfree しか与えられないので、free の存在意義がありません。
CPtr.malloc は作成中の残骸か何かで、使えないのではないかと思います。
結論を言うと CPtr.malloc は使用禁止、もしくは仕様レベルからの修正が
必要だと思います。
したがって、CPtr.malloc のドキュメントをはずすことを提案します。
互換性が許すならば CPtr.malloc 自体を消した方がいいと思います。
ちなみに CPtr.new は問題なく使えそうです。ただし、free を割り当てる
場合は同じ領域に複数の CPtr を作ってはいけないというルールがあると
思います。このルールは rdoc に明記されるべきだと思います。
--
Yusuke ENDOH mame@tsg.ne.jp
=end