diff --git a/ChangeLog b/ChangeLog index c72c3186fd..bd7fa692a7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Sun May 8 19:04:15 2011 Tadayoshi Funaba + + * lib/time.rb (xmlschema): avoid passing any negative numbers. + Sun May 8 18:40:03 2011 Tadayoshi Funaba * ext/date/date_{parse,strptime}.c: introduced some macros. diff --git a/lib/time.rb b/lib/time.rb index 7186531387..ffccdeca5e 100644 --- a/lib/time.rb +++ b/lib/time.rb @@ -519,7 +519,7 @@ class Time def xmlschema(fraction_digits=0) sprintf('%0*d-%02d-%02dT%02d:%02d:%02d', year < 0 ? 5 : 4, year, mon, day, hour, min, sec) + - if fraction_digits == 0 + if fraction_digits <= 0 '' else '.' + sprintf('%0*d', fraction_digits, (subsec * 10**fraction_digits).floor)