Apply patch to avoid resolve failures for optional fragments (FELIX-5061)


git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1706895 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java b/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
index 211e5e2..ded683f 100644
--- a/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
+++ b/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
@@ -2235,6 +2235,10 @@
             this.m_allCandidates = allCandidates;
             this.m_resource = resource;
             this.m_pkgName = pkgName;
+            if (blame1 == null)
+            {
+                throw new NullPointerException("First blame cannot be null.");
+            }
             this.m_blame1 = blame1;
             this.m_blame2 = blame2;
         }
@@ -2276,7 +2280,9 @@
         public Collection<Requirement> getUnresolvedRequirements() {
             if (m_blame2 == null)
             {
-                return Collections.emptyList();
+                // This is an export conflict so there is only the first blame;
+                // use its requirement.
+                return Collections.singleton(m_blame1.m_reqs.get(0));
             }
             else
             {