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.

Reply via email to