diff --git a/models/compat/wakatime/v1/stats.go b/models/compat/wakatime/v1/stats.go index f457efe..ecfc683 100644 --- a/models/compat/wakatime/v1/stats.go +++ b/models/compat/wakatime/v1/stats.go @@ -31,9 +31,6 @@ type StatsData struct { func NewStatsFrom(summary *models.Summary, filters *models.Filters) *StatsViewModel { totalTime := summary.TotalTime() numDays := int(summary.ToTime.T().Sub(summary.FromTime.T()).Hours() / 24) - if math.IsInf(float64(numDays), 0) { - numDays = 0 - } data := &StatsData{ Username: summary.UserID, @@ -45,6 +42,10 @@ func NewStatsFrom(summary *models.Summary, filters *models.Filters) *StatsViewMo DaysIncludingHolidays: numDays, } + if math.IsInf(data.DailyAverage, 0) || math.IsNaN(data.DailyAverage) { + data.DailyAverage = 0 + } + editors := make([]*SummariesEntry, len(summary.Editors)) for i, e := range summary.Editors { editors[i] = convertEntry(e, summary.TotalTimeBy(models.SummaryEditor)) diff --git a/utils/set.go b/utils/set.go index 6f88023..926be46 100644 --- a/utils/set.go +++ b/utils/set.go @@ -9,7 +9,7 @@ func StringsToSet(slice []string) map[string]bool { } func SetToStrings(set map[string]bool) []string { - slice := make([]string, len(set)) + slice := make([]string, 0, len(set)) for k := range set { slice = append(slice, k) }