FELIX-1133: Allow usage of fragments in Karaf features

git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@802687 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/karaf/features/core/src/main/java/org/apache/felix/karaf/features/internal/FeaturesServiceImpl.java b/karaf/features/core/src/main/java/org/apache/felix/karaf/features/internal/FeaturesServiceImpl.java
index 39a5e90..935c0f9 100644
--- a/karaf/features/core/src/main/java/org/apache/felix/karaf/features/internal/FeaturesServiceImpl.java
+++ b/karaf/features/core/src/main/java/org/apache/felix/karaf/features/internal/FeaturesServiceImpl.java
@@ -211,7 +211,13 @@
             bundles.add(b.getBundleId());
         }
         for (long id : bundles) {
-            bundleContext.getBundle(id).start();
+            Bundle b = bundleContext.getBundle(id);
+            // do not start fragment bundles.
+            Dictionary d = b.getHeaders();
+            String fragmentHostHeader = (String) d.get(Constants.FRAGMENT_HOST);
+            if (fragmentHostHeader == null || fragmentHostHeader.trim().length() == 0) {
+                b.start();
+            }
         }
 
         callListeners(new FeatureEvent(f, FeatureEvent.EventType.FeatureInstalled, false));