diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-04-03 05:43:49 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-04-03 05:43:49 +0000 |
commit | 2b1863a18b66b2bbfdfad5ec3b6fc12bc9d1cdca (patch) | |
tree | 1dad6ff3f5d79a40c3b59736e72fbea5154672af | |
parent | da6edfa1d24d3609ba0b1a4ff56514d2750144f5 (diff) |
* time.c (make_time_t): remove HAVE_TM_ZONE code since it
sometimes reports wrong time.
* time.c (make_time_t): remove unnecessary range check for
platforms where negative time_t is available.
* numeric.c (flodivmod): a bug in no fmod case.
* process.c (pst_wifsignaled): should apply WIFSIGNALED for status
(int), not st (VALUE).
* class.c (rb_include_module): module inclusion should be check
taints.
* class.c (rb_include_module): freeze check at first.
* eval.c (rb_attr): sprintf() and rb_intern() moved into
conditional body.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@1305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 31 | ||||
-rw-r--r-- | class.c | 5 | ||||
-rw-r--r-- | eval.c | 4 | ||||
-rw-r--r-- | numeric.c | 2 | ||||
-rw-r--r-- | time.c | 8 | ||||
-rw-r--r-- | version.h | 4 |
6 files changed, 41 insertions, 13 deletions
@@ -5,6 +5,14 @@ Tue Apr 3 09:56:20 2001 WATANABE Hirofumi <eban@ruby-lang.org> * lib/mkmf.rb: ditto. +Tue Apr 3 00:05:07 2001 Yukihiro Matsumoto <matz@ruby-lang.org> + + * time.c (make_time_t): remove HAVE_TM_ZONE code since it + sometimes reports wrong time. + + * time.c (make_time_t): remove unnecessary range check for + platforms where negative time_t is available. + Mon Apr 2 14:25:49 2001 Shugo Maeda <shugo@ruby-lang.org> * lib/monitor.rb (wait): ensure reentrance. @@ -21,6 +29,29 @@ Mon Apr 2 01:16:24 2001 WATANABE Hirofumi <eban@ruby-lang.org> * missing/dir.h, dir.c, Makefile: ditto. +Sun Apr 1 23:26:14 2001 TOYOFUKU Chikanobu <toyofuku@juice.or.jp> + + * numeric.c (flodivmod): a bug in no fmod case. + +Sun Apr 1 18:36:14 2001 Koji Arai <JCA02266@nifty.ne.jp> + + * process.c (pst_wifsignaled): should apply WIFSIGNALED for status + (int), not st (VALUE). + +Sat Mar 31 03:24:10 2001 Yukihiro Matsumoto <matz@ruby-lang.org> + + * class.c (rb_include_module): module inclusion should be check + taints. + +Fri Mar 30 12:51:19 2001 Yukihiro Matsumoto <matz@ruby-lang.org> + + * class.c (rb_include_module): freeze check at first. + +Thu Mar 29 17:05:09 2001 Yukihiro Matsumoto <matz@ruby-lang.org> + + * eval.c (rb_attr): sprintf() and rb_intern() moved into + conditional body. + Wed Mar 28 23:43:00 2001 Nobuyoshi Nakada <nobu.nakada@nifty.ne.jp> * ext/extmk.rb.in, lib/mkmf.rb: add C++ rules in addition to C @@ -222,6 +222,10 @@ rb_include_module(klass, module) VALUE p; int changed = 0; + rb_frozen_class_p(klass); + if (!OBJ_TAINTED(klass)) { + rb_secure(4); + } if (NIL_P(module)) return; if (klass == module) return; @@ -246,7 +250,6 @@ rb_include_module(klass, module) return; } } - rb_frozen_class_p(klass); RCLASS(klass)->super = include_class_new(module, RCLASS(klass)->super); klass = RCLASS(klass)->super; module = RCLASS(module)->super; @@ -502,9 +502,9 @@ rb_attr(klass, id, read, write, ex) rb_clear_cache_by_id(id); rb_funcall(klass, added, 1, ID2SYM(id)); } - sprintf(buf, "%s=", name); - id = rb_intern(buf); if (write) { + sprintf(buf, "%s=", name); + id = rb_intern(buf); rb_add_method(klass, id, NEW_ATTRSET(attriv), noex); rb_clear_cache_by_id(id); rb_funcall(klass, added, 1, ID2SYM(id)); @@ -332,7 +332,7 @@ flodivmod(x, y, divp, modp) double z; modf(x/y, &z); - mod = x - z * x; + mod = x - z * y; } #endif div = (x - mod) / y; @@ -324,11 +324,6 @@ make_time_t(tptr, utc_or_local) if (guess < 0) goto out_of_range; if (!utc_or_local) { /* localtime zone adjust */ -#if defined(HAVE_TM_ZONE) - tm = localtime(&guess); - if (!tm) goto error; - guess -= tm->tm_gmtoff; -#else struct tm gt, lt; long tzsec; @@ -357,10 +352,9 @@ make_time_t(tptr, utc_or_local) } tm = localtime(&guess); if (!tm) goto error; - if (lt.tm_isdst != tm->tm_isdst) { + if (tptr->tm_hour != tm->tm_hour) { guess -= 3600; } -#endif if (guess < 0) { goto out_of_range; } @@ -1,4 +1,4 @@ #define RUBY_VERSION "1.6.3" -#define RUBY_RELEASE_DATE "2001-04-02" +#define RUBY_RELEASE_DATE "2001-04-03" #define RUBY_VERSION_CODE 163 -#define RUBY_RELEASE_CODE 20010402 +#define RUBY_RELEASE_CODE 20010403 |