Change 29936 by [EMAIL PROTECTED] on 2007/01/23 18:43:50
Fix to Time::Local to fix problems with leap year calculation.
Affected files ...
... //depot/perl/lib/Time/Local.pm#38 edit
Differences ...
==== //depot/perl/lib/Time/Local.pm#38 (text) ====
Index: perl/lib/Time/Local.pm
--- perl/lib/Time/Local.pm#37~29931~ 2007-01-22 17:55:48.000000000 -0800
+++ perl/lib/Time/Local.pm 2007-01-23 10:43:50.000000000 -0800
@@ -91,6 +91,9 @@
sub timegm {
my ( $sec, $min, $hour, $mday, $month, $year ) = @_;
+ # Need to check leap year before altering the value
+ my $leap_year = _is_leap_year($year)
+
if ( $year >= 1000 ) {
$year -= 1900;
}
@@ -111,7 +114,7 @@
my $md = $MonthDays[$month];
++$md
- if $month == 1 && _is_leap_year($year);
+ if $month == 1 && $leap_year;
croak "Day '$mday' out of range 1..$md" if $mday > $md or $mday < 1;
croak "Hour '$hour' out of range 0..23" if $hour > 23 or $hour < 0;
End of Patch.