external/jfreereport/UnpackedTarball_jfreereport_libformula.mk     |    1 
 external/jfreereport/patches/libformula-minutes_truncation.patch.1 |    3 
 external/jfreereport/patches/libformula-seconds_rounding.patch.1   |   37 
++++++++++
 3 files changed, 38 insertions(+), 3 deletions(-)

New commits:
commit adee5647eaa887d286efbdc5a33fe8ca74d70995
Author: Lionel Elie Mamane <lio...@mamane.lu>
Date:   Sat Mar 5 10:33:46 2016 +0100

    janitorial cleanup
    
    Change-Id: Ic586d9a3bdc3ae850d48848c8ae1cff7f7b4a551

diff --git a/external/jfreereport/patches/libformula-minutes_truncation.patch.1 
b/external/jfreereport/patches/libformula-minutes_truncation.patch.1
index 0df98db..71f0be2 100644
--- a/external/jfreereport/patches/libformula-minutes_truncation.patch.1
+++ b/external/jfreereport/patches/libformula-minutes_truncation.patch.1
@@ -1,6 +1,3 @@
-Seulement dans jfreereport_libformula: bin
-Seulement dans jfreereport_libformula: build.log
-Seulement dans jfreereport_libformula: dist
 diff -ur 
jfreereport_libformula.org/source/org/pentaho/reporting/libraries/formula/function/datetime/MinuteFunction.java
 
jfreereport_libformula/source/org/pentaho/reporting/libraries/formula/function/datetime/MinuteFunction.java
 --- 
jfreereport_libformula.org/source/org/pentaho/reporting/libraries/formula/function/datetime/MinuteFunction.java
    2015-07-13 15:55:31.752539618 +0200
 +++ 
jfreereport_libformula/source/org/pentaho/reporting/libraries/formula/function/datetime/MinuteFunction.java
        2015-07-13 15:56:27.084394065 +0200
commit 2491b3217677d51ff3b4ee1a04fcde7a3b8f52a9
Author: Lionel Elie Mamane <lio...@mamane.lu>
Date:   Sat Mar 5 10:32:57 2016 +0100

    tdf#97462 reportbuilder SECOND() force rounding to nearest nanosecond
    
    Change-Id: I690a81997c79956fc19ddf83f958768d5e7a313e

diff --git a/external/jfreereport/UnpackedTarball_jfreereport_libformula.mk 
b/external/jfreereport/UnpackedTarball_jfreereport_libformula.mk
index ec9d29d..5962296 100644
--- a/external/jfreereport/UnpackedTarball_jfreereport_libformula.mk
+++ b/external/jfreereport/UnpackedTarball_jfreereport_libformula.mk
@@ -18,6 +18,7 @@ $(eval $(call 
gb_UnpackedTarball_fix_end_of_line,jfreereport_libformula,\
 $(eval $(call gb_UnpackedTarball_add_patches,jfreereport_libformula,\
        external/jfreereport/patches/common_build.patch \
        external/jfreereport/patches/libformula-time-notz.patch \
+       external/jfreereport/patches/libformula-seconds_rounding.patch.1 \
        external/jfreereport/patches/libformula-minutes_truncation.patch.1 \
        external/jfreereport/patches/libformula-datevalue_truncation.patch.1 \
 ))
diff --git a/external/jfreereport/patches/libformula-seconds_rounding.patch.1 
b/external/jfreereport/patches/libformula-seconds_rounding.patch.1
new file mode 100644
index 0000000..369332d
--- /dev/null
+++ b/external/jfreereport/patches/libformula-seconds_rounding.patch.1
@@ -0,0 +1,37 @@
+diff -ur 
jfreereport_libformula.org/source/org/pentaho/reporting/libraries/formula/function/datetime/SecondFunction.java
 
jfreereport_libformula/source/org/pentaho/reporting/libraries/formula/function/datetime/SecondFunction.java
+--- 
jfreereport_libformula.org/source/org/pentaho/reporting/libraries/formula/function/datetime/SecondFunction.java
    2016-03-05 09:43:06.121774691 +0100
++++ 
jfreereport_libformula/source/org/pentaho/reporting/libraries/formula/function/datetime/SecondFunction.java
        2016-03-05 09:51:04.810488511 +0100
+@@ -29,7 +29,7 @@
+ import org.pentaho.reporting.libraries.formula.util.NumberUtil;
+ 
+ /**
+- * This function extracts the minute (0 through 59) from a time.
++ * This function extracts the seconds (0 through 59) from a time.
+  *
+  * @author Cedric Pronzato
+  */
+@@ -67,14 +67,15 @@
+ 
+     // time * 24 so that we get the full hours (which we remove later)
+     final BigDecimal bd = NumberUtil.getAsBigDecimal(n);
+-    final BigDecimal hours = bd.multiply(MINUTES_PER_DAY);
+-    final BigDecimal dayAndHoursAsInt = NumberUtil.performIntRounding(hours);
+-    final BigDecimal minutesFraction = hours.subtract(dayAndHoursAsInt);
+-
+-    // Multiply the minutes with 60 to get the minutes as ints
+-    final BigDecimal seconds = minutesFraction.multiply(SECONDS);
+-    final BigDecimal secondsAsInt = NumberUtil.performIntRounding(seconds);
++    final BigDecimal minutes = bd.multiply(MINUTES_PER_DAY);
++    final BigDecimal dayHoursAndMinutesAsInt = 
NumberUtil.performIntRounding(minutes);
++    final BigDecimal secondsFraction = 
minutes.subtract(dayHoursAndMinutesAsInt);
++
++    // Multiply the minutes with 60 to get the seconds as ints
++    final BigDecimal seconds = secondsFraction.multiply(SECONDS);
++    final BigDecimal nanoSeconds = seconds.setScale(9, 
BigDecimal.ROUND_HALF_UP);
++    final BigDecimal secondsAsInt = 
NumberUtil.performIntRounding(nanoSeconds);
+ 
+     return new TypeValuePair(NumberType.GENERIC_NUMBER, secondsAsInt);
+   }
+-}
+\ No newline at end of file
++}
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to