From b0ab451c854cd362d1ee48ba5d5c8a606106da35 Mon Sep 17 00:00:00 2001 From: matz Date: Fri, 3 Sep 2004 17:41:27 +0000 Subject: * eval.c (cvar_cbase): class variables cause SEGV in instance_eval() for fixnums and symbols. [ruby-dev:24213] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@6855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ eval.c | 3 +++ 2 files changed, 8 insertions(+) diff --git a/ChangeLog b/ChangeLog index 980efce99..3a28f2e1c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sat Sep 4 01:14:57 2004 Yukihiro Matsumoto + + * eval.c (cvar_cbase): class variables cause SEGV in + instance_eval() for fixnums and symbols. [ruby-dev:24213] + Fri Sep 3 17:47:58 2004 Yukihiro Matsumoto * struct.c (make_struct): remove redefining constant when diff --git a/eval.c b/eval.c index e1599fe5d..71c012623 100644 --- a/eval.c +++ b/eval.c @@ -1777,6 +1777,9 @@ cvar_cbase() rb_warn("class variable access from toplevel singleton method"); } } + if (NIL_P(cref->nd_clss)) { + rb_raise(rb_eTypeError, "no class variables available"); + } return cref->nd_clss; } -- cgit