[ https://issues.apache.org/jira/browse/FELIX-4897?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14554340#comment-14554340 ]
David Bosschaert commented on FELIX-4897: ----------------------------------------- See here for a test case: http://git.eclipse.org/c/equinox/rt.equinox.framework.git/commit/?id=2e359683d0064e3bc331ed25677c8fea128cbfee > Dynamic package resolution with fragment package exports can lead to invalid > wirings > ------------------------------------------------------------------------------------ > > Key: FELIX-4897 > URL: https://issues.apache.org/jira/browse/FELIX-4897 > Project: Felix > Issue Type: Bug > Components: Resolver > Affects Versions: resolver-1.0.0 > Environment: All > Reporter: Thomas Watson > Fix For: resolver-1.4.0 > > Attachments: FELIX-4897.patch > > > Similar to FELIX-4428 but the behavior is a regression since the fix for > FELIX-4656 was released. The issue is only with dynamic import package > resolution. In this case a new CopyOnWriteList is created by > Candidates.add(Requirement, List<Capability>) from the method > Candidates.populateDynamic(ResolveContext, Resource, Requirement, > List<Capability>) but the original List<Capability> list may be modified in > the next call to Candidates.processCandidates(ResolveContext, Resource, > List<Capability>) > The issue is that processCandidates is responsible for inserting hosted > capabilities into the candidates List. Previously to the fix for FELIX-4656 > the passed in List was used as is so modifying it later would effect the list > stored in the Candidates data structure also. This is no longer the case. -- This message was sent by Atlassian JIRA (v6.3.4#6332)