Browse Source

filesetmanifest=mergewithoutmain didn't work for nested manifests. PR 29731.

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@793787 13f79535-47bb-0310-9956-ffa450edef68
master
Stefan Bodewig 16 years ago
parent
commit
0768b9b643
3 changed files with 39 additions and 1 deletions
  1. +4
    -0
      WHATSNEW
  2. +1
    -1
      src/main/org/apache/tools/ant/taskdefs/Jar.java
  3. +34
    -0
      src/tests/antunit/taskdefs/jar-test.xml

+ 4
- 0
WHATSNEW View File

@@ -397,6 +397,10 @@ Fixed bugs:
PrintWriter at all.
Bugzilla Report 43537.

* filesetmanifest="mergewithoutmain" in <jar> didn't treat inline
manifests as expected.
Bugzilla Report 29731.

Other changes:
--------------
* The get task now also follows redirects from http to https


+ 1
- 1
src/main/org/apache/tools/ant/taskdefs/Jar.java View File

@@ -513,7 +513,7 @@ public class Jar extends Zip {
finalManifest.merge(originalManifest);
}
finalManifest.merge(filesetManifest);
finalManifest.merge(configuredManifest);
finalManifest.merge(configuredManifest, !mergeManifestsMain);
finalManifest.merge(manifest, !mergeManifestsMain);

return finalManifest;


+ 34
- 0
src/tests/antunit/taskdefs/jar-test.xml View File

@@ -86,4 +86,38 @@
<au:assertResourceContains value="META-INF"
resource="${output}/META-INF/INDEX.LIST"/>
</target>

<target name="testMergeWithouMain"
description="https://issues.apache.org/bugzilla/show_bug.cgi?id=29731">
<mkdir dir="${input}"/>
<mkdir dir="${output}"/>
<jar destfile="${input}/first.jar">
<manifest>
<attribute name="First" value="Main Section"/>
<section name="Nested">
<attribute name="First" value="Nested Section"/>
</section>
</manifest>
</jar>
<jar destfile="${output}/second.jar" filesetmanifest="mergewithoutmain">
<manifest>
<attribute name="Second" value="Main Section"/>
<section name="Nested">
<attribute name="Second" value="Nested Section"/>
</section>
</manifest>
<zipgroupfileset dir="${input}" includes="first.jar"/>
</jar>
<unjar src="${output}/second.jar" dest="${output}"/>
<au:assertFileExists file="${output}/META-INF/MANIFEST.MF"/>
<au:assertResourceContains value="First: Nested Section"
resource="${output}/META-INF/MANIFEST.MF"/>
<au:assertResourceContains value="Second: Nested Section"
resource="${output}/META-INF/MANIFEST.MF"/>
<au:assertResourceDoesntContain
value="First: Main Section"
resource="${output}/META-INF/MANIFEST.MF"/>
<au:assertResourceContains value="Second: Main Section"
resource="${output}/META-INF/MANIFEST.MF"/>
</target>
</project>

Loading…
Cancel
Save