diff options
author | tadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-06-03 05:14:47 +0000 |
---|---|---|
committer | tadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-06-03 05:14:47 +0000 |
commit | 1ddb6f705979fdbc176b5c33e773689baf28fb24 (patch) | |
tree | a3d1909a5be33a82efdd4fa135329b8bf191fd6b /ext/date | |
parent | bdc55aa0c690e343be3b31a62c5f44a41f22e330 (diff) |
* ext/date/date_core.c: checks whether the object is frozen or not.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/date')
-rw-r--r-- | ext/date/date_core.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/ext/date/date_core.c b/ext/date/date_core.c index 7dbf32158d..d84d14c2bf 100644 --- a/ext/date/date_core.c +++ b/ext/date/date_core.c @@ -4696,6 +4696,9 @@ d_lite_initialize(int argc, VALUE *argv, VALUE self) int df, of; double sg; + rb_check_frozen(self); + rb_check_trusted(self); + rb_scan_args(argc, argv, "05", &vjd, &vdf, &vsf, &vof, &vsg); jd = INT2FIX(0); @@ -4749,6 +4752,9 @@ d_lite_initialize(int argc, VALUE *argv, VALUE self) static VALUE d_lite_initialize_copy(VALUE copy, VALUE date) { + rb_check_frozen(copy); + rb_check_trusted(copy); + if (copy == date) return copy; { @@ -7270,6 +7276,9 @@ d_lite_marshal_load(VALUE self, VALUE a) { get_d1(self); + rb_check_frozen(self); + rb_check_trusted(self); + if (TYPE(a) != T_ARRAY) rb_raise(rb_eTypeError, "expected an array"); |