From e2815d5ac1cf19001479f16f1663790a4d4d34a3 Mon Sep 17 00:00:00 2001 From: toshinagata1964 Date: Sat, 10 Aug 2013 01:16:26 +0000 Subject: [PATCH] ParameterRef#eps14 wrongly returned eps instead of eps14. git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/molby/trunk@383 a2be9bc6-48de-4e38-9406-05402d4bc13c --- MolLib/Ruby_bind/ruby_bind.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/MolLib/Ruby_bind/ruby_bind.c b/MolLib/Ruby_bind/ruby_bind.c index ce76a28..af01ae2 100644 --- a/MolLib/Ruby_bind/ruby_bind.c +++ b/MolLib/Ruby_bind/ruby_bind.c @@ -1265,11 +1265,11 @@ static VALUE s_ParameterRef_GetEps14(VALUE self) { if (tp == kVdwParType) { /* a = up->vdw.A14; b = up->vdw.B14; */ - eps = up->vdw.eps; + eps = up->vdw.eps14; } else if (tp == kVdwPairParType) { /* a = up->vdwp.A14; b = up->vdwp.B14; */ - eps = up->vdwp.eps; + eps = up->vdwp.eps14; } else rb_raise(rb_eMolbyError, "invalid member eps14"); /* if (a == 0.0 || b == 0.0) */ return rb_float_new(eps * INTERNAL2KCAL); @@ -2052,6 +2052,8 @@ s_ParameterRef_SetAttr(VALUE self, VALUE key, VALUE value) if (s_ParameterAttrDefTable[i].id == kid) { if (value == Qundef) return (*(s_ParameterAttrDefTable[i].getter))(self); + else if (s_ParameterAttrDefTable[i].setter == NULL) + rb_raise(rb_eMolbyError, "the attribute \"%s\" is read-only", rb_id2name(kid)); else return (*(s_ParameterAttrDefTable[i].setter))(self, value); } -- 2.11.0