Skip to content

Commit 25d3faa

Browse files
committed
Add a spec for calling RDATA on a non data wrapper.
1 parent 640da8c commit 25d3faa

File tree

2 files changed

+5
-1
lines changed

2 files changed

+5
-1
lines changed

lib/truffle/truffle/cext.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1778,7 +1778,7 @@ def rb_tr_log_warning(message)
17781778
end
17791779

17801780
def RDATA(object)
1781-
raise TypeError unless Truffle::CExt.hidden_variable_get(object, :data_holder)
1781+
rb_check_type(object, T_DATA)
17821782
RData.new(object)
17831783
end
17841784

spec/ruby/optional/capi/data_spec.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,10 @@
3030
@s.change_struct(a, 100)
3131
@s.get_struct(a).should == 100
3232
end
33+
34+
it "raises a TypeError if the object does not wrap a struct" do
35+
lambda { @s.get_struct(Object.new) }.should raise_error(TypeError)
36+
end
3337
end
3438

3539
describe "DATA_PTR" do

0 commit comments

Comments
 (0)