Ver Fonte

LibJS: Protect DayWithinYear against non-finite times

Timothy Flynn há 3 anos atrás
pai
commit
4848f587cd
1 ficheiros alterados com 3 adições e 0 exclusões
  1. 3 0
      Userland/Libraries/LibJS/Runtime/Date.cpp

+ 3 - 0
Userland/Libraries/LibJS/Runtime/Date.cpp

@@ -63,6 +63,9 @@ String Date::iso_date_string() const
 // DayWithinYear(t), https://tc39.es/ecma262/#eqn-DayWithinYear
 // DayWithinYear(t), https://tc39.es/ecma262/#eqn-DayWithinYear
 u16 day_within_year(double t)
 u16 day_within_year(double t)
 {
 {
+    if (!Value(t).is_finite_number())
+        return 0;
+
     // Day(t) - DayFromYear(YearFromTime(t))
     // Day(t) - DayFromYear(YearFromTime(t))
     return static_cast<u16>(day(t) - day_from_year(year_from_time(t)));
     return static_cast<u16>(day(t) - day_from_year(year_from_time(t)));
 }
 }