You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by gn...@apache.org on 2010/10/26 09:02:02 UTC

svn commit: r1027387 - in /felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal: BundleTransformer.java DirectoryWatcher.java

Author: gnodet
Date: Tue Oct 26 07:02:02 2010
New Revision: 1027387

URL: http://svn.apache.org/viewvc?rev=1027387&view=rev
Log:
[FELIX-2318] Possible NPE for jars with null Manifest

Modified:
    felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/BundleTransformer.java
    felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/DirectoryWatcher.java

Modified: felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/BundleTransformer.java
URL: http://svn.apache.org/viewvc/felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/BundleTransformer.java?rev=1027387&r1=1027386&r2=1027387&view=diff
==============================================================================
--- felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/BundleTransformer.java (original)
+++ felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/BundleTransformer.java Tue Oct 26 07:02:02 2010
@@ -49,7 +49,7 @@ public class BundleTransformer implement
             }
             jar = new JarFile(artifact);
             Manifest m = jar.getManifest();
-            if (m.getMainAttributes().getValue(new Attributes.Name("Bundle-SymbolicName")) != null)
+            if (m != null && m.getMainAttributes().getValue(new Attributes.Name("Bundle-SymbolicName")) != null)
             {
                 return true;
             }

Modified: felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/DirectoryWatcher.java
URL: http://svn.apache.org/viewvc/felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/DirectoryWatcher.java?rev=1027387&r1=1027386&r2=1027387&view=diff
==============================================================================
--- felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/DirectoryWatcher.java (original)
+++ felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/DirectoryWatcher.java Tue Oct 26 07:02:02 2010
@@ -921,6 +921,11 @@ public class DirectoryWatcher extends Th
         is.mark(256 * 1024);
         JarInputStream jar = new JarInputStream(is);
         Manifest m = jar.getManifest();
+        if( m == null ) {
+            throw new BundleException(
+                "The bundle " + bundleLocation + " does not have a META-INF/MANIFEST.MF! "+
+                    "Make sure, META-INF and MANIFEST.MF are the first 2 entries in your JAR!");
+        }
         String sn = m.getMainAttributes().getValue(Constants.BUNDLE_SYMBOLICNAME);
         String vStr = m.getMainAttributes().getValue(Constants.BUNDLE_VERSION);
         Version v = vStr == null ? Version.emptyVersion : Version.parseVersion(vStr);