mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* 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
This commit is contained in:
parent
da6edfa1d2
commit
2b1863a18b
6 changed files with 41 additions and 13 deletions
8
time.c
8
time.c
|
|
@ -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;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue