Buggy code:
public class SummaryPanel extends TriviaMainPanel implements ActionListener { private static final long serialVersionUID = 3544918496657028139L ; private static Color backgroundColor ; private static Color speedColor ; private static Color conflictColor ; private final JPanel emptyPanel ; private final JPanel emptyPanel2 ; private final JPanel buttonPanel ; private final JLabel roundHeaderLabel ; private final JLabel totalHeaderLabel ; private final JLabel teamNameLabel ; private final JLabel earnedRowLabel ; private final JLabel valueRowLabel ; private final JLabel roundEarnedLabel ; private final JLabel roundValueLabel ; private final JLabel totalEarnedLabel ; private final JLabel totalValueLabel ; private final JLabel announcedLabel ; private final JLabel placeLabel ; private final JLabel announcedBannerLabel ; private final JLabel scoreTextLabel ; private final JLabel placeTextLabel ; private final JLabel currentHourLabel ; private final JToggleButton speedButton ; private final JButton newRoundButton ; private final JButton conflictButton ; private final UserListPanel userListPanel ; public SummaryPanel ( TriviaClient client , TriviaFrame parent ) { } @ Override public synchronized void actionPerformed ( ActionEvent event ) { } @ Override public void loadProperties ( Properties properties ) { } @ Override public synchronized void updateGUI ( boolean force ) { final Trivia trivia = this . client . getTrivia ( ) ; final int currentRound = trivia . getCurrentRoundNumber ( ) ; this . teamNameLabel . setText ( this . client . getTrivia ( ) . getTeamName ( ) ) ; this . roundEarnedLabel . setText ( ( "" + ( trivia . getCurrentRoundEarned ( ) ) ) ) ; this . totalEarnedLabel . setText ( ( "" + ( trivia . getEarned ( ) ) ) ) ; this . roundValueLabel . setText ( ( "" + ( trivia . getCurrentRoundValue ( ) ) ) ) ; this . totalValueLabel . setText ( ( "" + ( trivia . getValue ( ) ) ) ) ; this . currentHourLabel . setText ( ( "Current<seq2seq4repair_space>Round:<seq2seq4repair_space>" + currentRound ) ) ; if ( trivia . isAnnounced ( ( currentRound - 1 ) ) ) { final int announcedPoints = trivia . getAnnouncedPoints ( ( currentRound - 1 ) ) ; this . announcedLabel . setText ( ( "" + announcedPoints ) ) ; this . placeLabel . setText ( ( "" + ( TriviaClient . ordinalize ( trivia . getAnnouncedPlace ( ( currentRound - 1 ) ) ) ) ) ) ; if ( announcedPoints != ( trivia . getCumulativeEarned ( ( currentRound - 1 ) ) ) ) { this . announcedBannerLabel . getParent ( ) . setBackground ( SummaryPanel . conflictColor ) ; this . scoreTextLabel . getParent ( ) . setBackground ( SummaryPanel . conflictColor ) ; this . placeTextLabel . getParent ( ) . setBackground ( SummaryPanel . conflictColor ) ; this . announcedLabel . getParent ( ) . setBackground ( SummaryPanel . conflictColor ) ; this . placeLabel . getParent ( ) . setBackground ( SummaryPanel . conflictColor ) ; this . announcedBannerLabel . setVisible ( false ) ; this . conflictButton . setVisible ( true ) ; } else { this . announcedBannerLabel . getParent ( ) . setBackground ( SummaryPanel . backgroundColor ) ; this . scoreTextLabel . getParent ( ) . setBackground ( SummaryPanel . backgroundColor ) ; this . placeTextLabel . getParent ( ) . setBackground ( SummaryPanel . backgroundColor ) ; this . announcedLabel . getParent ( ) . setBackground ( SummaryPanel . backgroundColor ) ; this . placeLabel . getParent ( ) . setBackground ( SummaryPanel . backgroundColor ) ; this . announcedBannerLabel . setVisible ( true ) ; this . conflictButton . setVisible ( false ) ; } } else { this . announcedLabel . setText ( "" ) ; this . placeLabel . setText ( "" ) ; this . announcedBannerLabel . getParent ( ) . setBackground ( SummaryPanel . backgroundColor ) ; this . scoreTextLabel . getParent ( ) . setBackground ( SummaryPanel . backgroundColor ) ; this . placeTextLabel . getParent ( ) . setBackground ( SummaryPanel . backgroundColor ) ; this . announcedLabel . getParent ( ) . setBackground ( SummaryPanel . backgroundColor ) ; this . placeLabel . getParent ( ) . setBackground ( SummaryPanel . backgroundColor ) ; this . announcedBannerLabel . setVisible ( true ) ; this . conflictButton . setVisible ( false ) ; } <START_BUG> if ( trivia . roundOver ( ) ) { <END_BUG> this . speedButton . setVisible ( false ) ; this . newRoundButton . setVisible ( true ) ; } else { this . speedButton . setVisible ( true ) ; this . newRoundButton . setVisible ( false ) ; if ( trivia . isCurrentSpeed ( ) ) { this . speedButton . setText ( "Speed" ) ; this . speedButton . setSelected ( true ) ; this . speedButton . setForeground ( SummaryPanel . speedColor ) ; } else { this . speedButton . setText ( "Normal" ) ; this . speedButton . setSelected ( false ) ; this . speedButton . setForeground ( Color . BLACK ) ; } } this . userListPanel . updateGUI ( force ) ; } }

Fix:
if ( ( trivia . roundOver ( ) ) && ( ( trivia . getCurrentRoundNumber ( ) ) < ( trivia . getNRounds ( ) ) ) ) {