Skip to content

Commit f27341b

Browse files
committed
Fix NaN handling in windowDays calculation
The function didn't validate that params.windowDays is a finite number. If it was NaN or Infinity, Math.max(1, NaN) would return NaN. Added Number.isFinite() check to default to FREEBUFF_USAGE_MAP_DAYS for invalid numbers.
1 parent 7b65652 commit f27341b

1 file changed

Lines changed: 2 additions & 1 deletion

File tree

common/src/util/freebuff-usage-summary.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,8 @@ export function buildFreebuffUsageSummary(params: {
5353
windowDays?: number
5454
timeZone?: string
5555
}): FreebuffUsageSummary {
56-
const windowDays = Math.max(1, params.windowDays ?? FREEBUFF_USAGE_MAP_DAYS)
56+
const safeWindowDays = params.windowDays !== undefined && Number.isFinite(params.windowDays) ? params.windowDays : FREEBUFF_USAGE_MAP_DAYS
57+
const windowDays = Math.max(1, safeWindowDays)
5758
const todayDateKey = params.todayDateKey
5859

5960
const allDates = [...new Set(params.activeDates)]

0 commit comments

Comments
 (0)