diff --git a/ant.spec b/ant.spec index e5340c882f319154e79017e2db2edfbc0b1eba38..4c09028a3def387b2d0af3629b3a5628f1890ad8 100644 --- a/ant.spec +++ b/ant.spec @@ -4,7 +4,7 @@ Name: ant Summary: A Java-based build tool Version: 1.10.12 -Release: 1 +Release: 2 Epoch: 0 License: ASL 2.0 URL: https://ant.apache.org/ @@ -12,6 +12,8 @@ Source0: https://archive.apache.org/dist/ant/source/apache-ant-%{version} Source1: ant.asciidoc Source2: apache-ant-1.8.ant.conf +Patch0001: backport-Fix-integer-overflow-when-parsing-SOURCE_DATE_EPOCH.patch + BuildRequires: javapackages-local java-1.8.0-devel ant >= 1.10.2 BuildRequires: ant-junit xmlto mvn(antlr:antlr) mvn(bcel:bcel) BuildRequires: mvn(bsf:bsf) mvn(com.jcraft:jsch) mvn(commons-logging:commons-logging-api) @@ -431,6 +433,9 @@ LC_ALL=en_US.utf8 %{ant} test %{_javadocdir}/%{name} %changelog +* Mon Dec 02 2024 zhaosaisai - 0:1.10.12-2 +- Add Fix-integer-overflow-when-parsing-SOURCE_DATE_EPOCH + * Fri Jan 21 2022 SimpleUpdate Robot - 1.10.12-1 - Upgrade to version 1.10.12 diff --git a/backport-Fix-integer-overflow-when-parsing-SOURCE_DATE_EPOCH.patch b/backport-Fix-integer-overflow-when-parsing-SOURCE_DATE_EPOCH.patch new file mode 100644 index 0000000000000000000000000000000000000000..3a6e091a48d78063332ecb2357ed3dae302762c3 --- /dev/null +++ b/backport-Fix-integer-overflow-when-parsing-SOURCE_DATE_EPOCH.patch @@ -0,0 +1,82 @@ +From babd1c4007b5d1afc9e4e0744455fbdd6b85e88d Mon Sep 17 00:00:00 2001 +From: Mikolaj Izdebski +Date: Sat, 23 Apr 2022 00:12:11 +0200 +Subject: [PATCH] Fix integer overflow when parsing SOURCE_DATE_EPOCH + +This closes #186 pull request at github/apache/ant repo. +--- + CONTRIBUTORS | 1 + + WHATSNEW | 4 +++ + contributors.xml | 4 +++ + .../org/apache/tools/ant/taskdefs/Tstamp.java | 2 +- + src/tests/antunit/taskdefs/tstamp-test.xml | 31 +++++++++++++++++++ + 5 files changed, 41 insertions(+), 1 deletion(-) + +diff --git a/contributors.xml b/contributors.xml +index f0f5197c7f..ddc55ecc8b 100644 +--- a/contributors.xml ++++ b/contributors.xml +@@ -1280,6 +1280,10 @@ + Mike + Williams + ++ ++ Mikolaj ++ Izdebski ++ + + Miroslav + ZaƄko +diff --git a/src/main/org/apache/tools/ant/taskdefs/Tstamp.java b/src/main/org/apache/tools/ant/taskdefs/Tstamp.java +index aa1034eaef..ca10efe000 100644 +--- a/src/main/org/apache/tools/ant/taskdefs/Tstamp.java ++++ b/src/main/org/apache/tools/ant/taskdefs/Tstamp.java +@@ -82,7 +82,7 @@ public void execute() throws BuildException { + try { + if (epoch != null) { + // Value of SOURCE_DATE_EPOCH will be an integer, representing seconds. +- d = new Date(Integer.parseInt(epoch) * 1000); ++ d = new Date(Long.parseLong(epoch) * 1000L); + log("Honouring environment variable " + ENV_SOURCE_DATE_EPOCH + " which has been set to " + epoch); + } + } catch(NumberFormatException e) { +diff --git a/src/tests/antunit/taskdefs/tstamp-test.xml b/src/tests/antunit/taskdefs/tstamp-test.xml +index 20c3227621..1553d32ee8 100644 +--- a/src/tests/antunit/taskdefs/tstamp-test.xml ++++ b/src/tests/antunit/taskdefs/tstamp-test.xml +@@ -75,4 +75,35 @@ public class IsEpochIn1969Here implements Condition { + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +