diff --git a/src/etc/testcases/taskdefs/zip.xml b/src/etc/testcases/taskdefs/zip.xml
index 0163bc564..afac90e2a 100644
--- a/src/etc/testcases/taskdefs/zip.xml
+++ b/src/etc/testcases/taskdefs/zip.xml
@@ -95,6 +95,13 @@
update="true" />
+
+
+
+
+
+
+
diff --git a/src/testcases/org/apache/tools/ant/taskdefs/ZipTest.java b/src/testcases/org/apache/tools/ant/taskdefs/ZipTest.java
index c98e084fb..3d85301ff 100644
--- a/src/testcases/org/apache/tools/ant/taskdefs/ZipTest.java
+++ b/src/testcases/org/apache/tools/ant/taskdefs/ZipTest.java
@@ -57,6 +57,7 @@ import org.apache.tools.ant.BuildFileTest;
import java.io.File;
import java.io.IOException;
+import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import java.util.Enumeration;
@@ -134,4 +135,13 @@ public class ZipTest extends BuildFileTest {
public void testUpdateIsNecessary() {
expectLogContaining("testUpdateIsNecessary", "Updating");
}
+
+ // Bugzilla Report 18403
+ public void testPrefixAddsDir() throws IOException {
+ executeTarget("testPrefixAddsDir");
+ File archive = getProject().resolveFile("test3.zip");
+ ZipFile zf = new ZipFile(archive);
+ ZipEntry ze = zf.getEntry("test/");
+ assertNotNull("test/ has been added", ze);
+ }
}