# HG changeset patch # User Felix Wolfsteller # Date 1328276038 0 # Node ID e1eaf9c2b5bf3bf4418e583ba9f17a8efe99ae0c # Parent 7a1166758d2443ffde0c57518aaa3152427a33c4 Fix. flys-artifacts/trunk@3897 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r 7a1166758d24 -r e1eaf9c2b5bf flys-artifacts/ChangeLog --- a/flys-artifacts/ChangeLog Fri Feb 03 13:06:23 2012 +0000 +++ b/flys-artifacts/ChangeLog Fri Feb 03 13:33:58 2012 +0000 @@ -1,3 +1,8 @@ +2012-02-03 Felix Wolfsteller + + * src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java: + Fix. + 2012-02-03 Felix Wolfsteller * src/main/resources/messages.properties, diff -r 7a1166758d24 -r e1eaf9c2b5bf flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java Fri Feb 03 13:06:23 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WstValueTable.java Fri Feb 03 13:33:58 2012 +0000 @@ -798,6 +798,8 @@ if (rowIndex < 0) { rowIndex = -rowIndex -1; } + + // TODO Beyond definition, we could stop more clever. if (rowIndex >= rows.size()) { rowIndex = rows.size() -1; } @@ -821,10 +823,12 @@ break; } } - for (int after = rowIndex, R = rows.size(); after < R; after++) { - if (!Double.isNaN(rows.get(after).ws[col])) { - rowAfter = rows.get(after); - break; + if (rowBefore != null) { + for (int after = rowIndex, R = rows.size(); after < R; after++) { + if (!Double.isNaN(rows.get(after).ws[col])) { + rowAfter = rows.get(after); + break; + } } } @@ -915,7 +919,7 @@ return new double[2][0]; } - SplineFunction sf2 = createSpline(km1, errors); + SplineFunction sf2 = createSpline(km2, errors); if (sf2 == null) { return new double[2][0]; }