mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-31 16:20:45 +00:00
createRegattaLeaderboard() returned as soon as the create dialog's OK was pressed, without waiting for the newly created regatta leaderboard row to be rendered into the leaderboards cell table. A subsequent getLeaderboardDetails() call could then race the AJAX round-trip, find no matching row yet, and return null, causing NullPointerExceptions downstream (e.g. in linkRace()). Wait until the new row (named after the regatta, see RegattaDescriptor.toString()) has been rendered before returning, mirroring createFlexibleLeaderboard(). This fixes the intermittent failures of TestColumnsInLeaderboard.testLeaderboardPanelRefresh and TestSwitchingOffStartOfRaceInference; the other callers of createRegattaLeaderboard() were verified to still pass. Assisted-By: Claude Opus 4.8 (Claude Code)