Hello,

  Sorry, I was doing the check in the wrong place !

-- 
 ‎أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
 GPG KeyID: 0xEDDDA1B7 (@ subkeys.pgp.net)
 GPG Fingerprint: 8206 A196 2084 7E6D 0DF8  B176 BC19 6A94 EDDD A1B7
* Fixed parsing of a manifest file that got a multi-line field
* No need to rewrite manifest file if user provided no overrides or extra
  fields.
--- jh_manifest.orig	2008-12-24 01:26:20.000000000 +0200
+++ jh_manifest	2009-07-17 16:36:09.000000000 +0300
@@ -71,17 +71,25 @@
 
    os.system("cd '"+tempdir+"' ; fastjar -x -f '"+jar+"'")
 
+   manifest_override = 0
+   if {"top":{}} != manifest:
+     manifest_override = 1
+
    manifest = parseManifest(tempdir + "/META-INF/MANIFEST.MF", None, manifest)
 
    if not "Class-Path" in manifest["top"] and "CLASSPATH" in os.environ:
       manifest["top"]["Class-Path"] = os.environ["CLASSPATH"].replace(":", " ")
+      manifest_override = 1
 
-   writeManifest(tempdir + "/MANIFEST.MF", manifest)
+   # No need to rewrite manifest if there are no overrides !
+   if manifest_override:
+     writeManifest(tempdir + "/MANIFEST.MF", manifest)
 
    if "--no-act" in args or "-n" in args:
       print jar+":"
       print str(manifest)
-   else:
+   elif manifest_override:
+   # No need to rewrite manifest if there are no overrides !
       os.system("rm -f '"+jar+"' ")
       os.system("cd '"+tempdir+"' ; ls -1 | egrep -v '^(META-INF|MANIFEST.MF)' | fastjar -c -f '"+jar+"' -m MANIFEST.MF -@")
 
@@ -153,7 +161,7 @@
             manifest[section] = {}
          for i in sec:
             if not i.strip() in manifest[section]:
-               manifest[section][i.strip()] = sec[i].strip()
+               manifest[section][i.strip()] = sec[i].strip().replace('\n ','')
          section = ""
    else:
       lines = f.readlines()

Reply via email to