Fix failure to check last leaderboard on first start
This commit is contained in:
8
main.go
8
main.go
@ -133,6 +133,8 @@ func main() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
defer func() { lastBody = currBody }()
|
||||||
|
|
||||||
lastRead = time.Now().Unix()
|
lastRead = time.Now().Unix()
|
||||||
jsonBytes, marshalErr := json.Marshal(map[string]any{"last_read": lastRead, "last_body": string(currBody)})
|
jsonBytes, marshalErr := json.Marshal(map[string]any{"last_read": lastRead, "last_body": string(currBody)})
|
||||||
if marshalErr != nil {
|
if marshalErr != nil {
|
||||||
@ -144,6 +146,10 @@ func main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if len(lastBody) == 0 {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
lastLeaderboard, lastLeaderboardErr := buildLeaderboard(lastBody)
|
lastLeaderboard, lastLeaderboardErr := buildLeaderboard(lastBody)
|
||||||
if lastLeaderboardErr != nil {
|
if lastLeaderboardErr != nil {
|
||||||
log.Println("Error building leaderboard from cached body:", lastLeaderboardErr)
|
log.Println("Error building leaderboard from cached body:", lastLeaderboardErr)
|
||||||
@ -305,7 +311,7 @@ func buildLeaderboard(body []byte) (leaderboardData, error) {
|
|||||||
var leaderboard leaderboardData
|
var leaderboard leaderboardData
|
||||||
marshalErr := json.Unmarshal(body, &leaderboard)
|
marshalErr := json.Unmarshal(body, &leaderboard)
|
||||||
if marshalErr != nil {
|
if marshalErr != nil {
|
||||||
return leaderboard, fmt.Errorf("error unmarshaling string into leaderboardData: %w", marshalErr)
|
return leaderboard, fmt.Errorf("error unmarshaling string `%s` into leaderboardData: %w", string(body), marshalErr)
|
||||||
}
|
}
|
||||||
|
|
||||||
jsonObj, parseErr := fastjson.ParseBytes(body)
|
jsonObj, parseErr := fastjson.ParseBytes(body)
|
||||||
|
Reference in New Issue
Block a user