Bug #3872

is test/-ext-/test_bug-3652.rb correct?

Added by Usaku NAKAMURA over 4 years ago. Updated almost 4 years ago.

[ruby-dev:42295]
Status:Rejected
Priority:Normal
Assignee:Nobuyoshi Nakada
ruby -v:ruby 1.9.3dev (2010-09-24 trunk 29329) [i386-mswin32] Backport:

Description

=begin
手元で表題のテストがFailureになるのでコードを見ながら考えてみたのですが、
ext/-test-/bug-3652/bug.cのbug_str_resize()内では、

(1) rb_str_buf_new()を使って、指定されたcapaを持つStringを生成して、
(2) そのStringのRSTRING_PTRに、指定された文字列を入れ込んで、
(3) そのStringを指定された長さにrb_str_resize()する

という処理をしていますが、(1)で生成されたStringはcapaはセットされていても
lenは0のままなので、(3)でresizeされる際にRSTRING_PTRが別のポインタに変化した
場合、中身はコピーされません。
# string.cの1738行目

というわけで、このテスト自体は失敗して当然に見えるのですが、おかしいのは
テストなのか、他の部分なのか、どこでしょうか?
=end

History

#1 Updated by Usaku NAKAMURA over 4 years ago

  • Status changed from Assigned to Rejected

=begin
と思ったら、実はリポジトリ上では既にこのファイルは消されていたのでした。
なんで俺の手元にだけ残ってますか orz
=end

Also available in: Atom PDF