From 2b58081e38629528dc4f1dd61859e97f1e676943 Mon Sep 17 00:00:00 2001 From: Axel Uhl Date: Mon, 11 Jun 2012 15:41:09 +0200 Subject: [PATCH] fixing bug 749: discard thresholds must be filled from left to right --- .../gwt/ui/adminconsole/LeaderboardDialog.java | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/LeaderboardDialog.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/LeaderboardDialog.java index 035613bf6c0..7e1871ad5e3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/LeaderboardDialog.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/LeaderboardDialog.java @@ -49,7 +49,9 @@ public abstract class LeaderboardDialog extends DataEntryDialog 0); } } @@ -85,10 +87,15 @@ public abstract class LeaderboardDialog extends DataEntryDialog discardThresholds = new ArrayList(); - for (int i = 0; i < discardThresholdBoxes.length; i++) { - if (discardThresholdBoxes[i].getValue() != null - && discardThresholdBoxes[i].getValue().toString().length() > 0) { - discardThresholds.add(discardThresholdBoxes[i].getValue().intValue()); + // go backwards; starting from first non-zero element, add them; take over leading zeroes which validator shall discard + for (int i = discardThresholdBoxes.length-1; i>=0; i--) { + if ((discardThresholdBoxes[i].getValue() != null + && discardThresholdBoxes[i].getValue().toString().length() > 0) || !discardThresholds.isEmpty()) { + if (discardThresholdBoxes[i].getValue() == null) { + discardThresholds.add(0, 0); + } else { + discardThresholds.add(0, discardThresholdBoxes[i].getValue().intValue()); + } } } int[] discardThresholdsBoxContents = new int[discardThresholds.size()];