diff --git a/src/etc/testcases/taskdefs/jar.xml b/src/etc/testcases/taskdefs/jar.xml
index 46ac4f5b6..2eaee82a9 100644
--- a/src/etc/testcases/taskdefs/jar.xml
+++ b/src/etc/testcases/taskdefs/jar.xml
@@ -200,4 +200,12 @@
+
+
+
+
+
+
+
+
diff --git a/src/testcases/org/apache/tools/ant/taskdefs/JarTest.java b/src/testcases/org/apache/tools/ant/taskdefs/JarTest.java
index b4c9fafc7..fb51ecb49 100644
--- a/src/testcases/org/apache/tools/ant/taskdefs/JarTest.java
+++ b/src/testcases/org/apache/tools/ant/taskdefs/JarTest.java
@@ -59,6 +59,9 @@ import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import java.util.Date;
+import java.util.Enumeration;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
import org.apache.tools.ant.BuildFileTest;
/**
@@ -226,4 +229,18 @@ public class JarTest extends BuildFileTest {
File jarXml = getProject().resolveFile(tempDir + "jar.xml");
assertTrue(jarXml.exists());
}
+
+ public void testNoDuplicateIndex() throws IOException {
+ executeTarget("testNoDuplicateIndex");
+ ZipFile archive = new ZipFile(getProject().resolveFile(tempJar));
+ Enumeration enum = archive.entries();
+ int numberOfIndexLists = 0;
+ while (enum.hasMoreElements()) {
+ ZipEntry ze = (ZipEntry) enum.nextElement();
+ if (ze.getName().equals("META-INF/INDEX.LIST")) {
+ numberOfIndexLists++;
+ }
+ }
+ assertEquals(1, numberOfIndexLists);
+ }
}