From b30b998966553a614f18703536b49a4dc273e0c6 Mon Sep 17 00:00:00 2001 From: ko1 Date: Sat, 27 Dec 2008 03:57:21 +0000 Subject: * vm_insnhelper.c (vm_call_method, vm_call_cfunc): use original id instead of calling id when NODE_CFUNC or NODE_BMETHOD. fixes Bug #632 [ruby-core:19282]. * vm_eval.c (vm_call0, vm_call_super): ditto. * vm_method.c (rb_add_method, rb_alias): store original id in nd_file field of NODE_METHOD. * test/stringio/test_stringio.rb: add a test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/stringio/test_stringio.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'test/stringio/test_stringio.rb') diff --git a/test/stringio/test_stringio.rb b/test/stringio/test_stringio.rb index 8f0dc8702c..98cf84e00f 100644 --- a/test/stringio/test_stringio.rb +++ b/test/stringio/test_stringio.rb @@ -379,4 +379,19 @@ class TestStringIO < Test::Unit::TestCase assert_equal(4, f.size) end + # This test is should in ruby/test_method.rb + # However this test depends on stringio library, + # we write it here. + class C < StringIO + alias old_init initialize + attr_reader :foo + def initialize + @foo = :ok + old_init + end + end + + def test_method + assert_equal(:ok, C.new.foo, 'Bug #632 [ruby-core:19282]') + end end -- cgit v1.2.3