diff --git a/tycho-extras/tycho-pomless/src/main/java/org/eclipse/tycho/pomless/AbstractTychoMapping.java b/tycho-extras/tycho-pomless/src/main/java/org/eclipse/tycho/pomless/AbstractTychoMapping.java index 091bb7080f..31aa5dc1f9 100644 --- a/tycho-extras/tycho-pomless/src/main/java/org/eclipse/tycho/pomless/AbstractTychoMapping.java +++ b/tycho-extras/tycho-pomless/src/main/java/org/eclipse/tycho/pomless/AbstractTychoMapping.java @@ -173,7 +173,9 @@ protected Path getRealArtifactFile(Path polyglotArtifactFile) { return polyglotArtifactFile; } - protected synchronized ParentModel findParent(Path projectRoot, Map projectOptions) throws IOException { + protected synchronized ParentModel findParent(Path projectRootIn, Map projectOptions) + throws IOException { + var projectRoot = projectRootIn.normalize(); ParentModel cached = parentModelCache.get(projectRoot); if (cached != null) { return cached; @@ -371,7 +373,7 @@ private boolean modelHasProperty(String property, Model model, Path projectRoot) try { ParentModel parent = findParent(projectRoot.getParent(), Map.of()); Model parentModel = parent.parentModel(); - if (parentModel != null) { + if (parentModel != null && parentModel != model) { return modelHasProperty(property, parentModel, projectRoot.resolve(parent.parentReference().getRelativePath())); }