From ba0976a5394ee929793d8240d500fa59deca01c3 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Mon, 29 May 2023 13:14:18 +0200 Subject: [PATCH] Make A2 variant search more robust --- .../src/org/argeo/init/a2/FsA2Source.java | 28 ++++++++++--------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/org.argeo.init/src/org/argeo/init/a2/FsA2Source.java b/org.argeo.init/src/org/argeo/init/a2/FsA2Source.java index e0e2e437f..151b0023f 100644 --- a/org.argeo.init/src/org/argeo/init/a2/FsA2Source.java +++ b/org.argeo.init/src/org/argeo/init/a2/FsA2Source.java @@ -61,20 +61,22 @@ public class FsA2Source extends AbstractProvisioningSource implements A2Source { if (variantPath == null) continue contributions; - // a variant was found, let's collect its contributions (also common ones in its - // parent) - for (Path variantContributionPath : Files.newDirectoryStream(variantPath.getParent())) { - String variantContributionId = variantContributionPath.getFileName().toString(); - if (variantContributionId.contains(".")) { - A2Contribution contribution = getOrAddContribution(variantContributionId); - contributions.put(variantContributionPath, contribution); + if (Files.exists(variantPath)) { + // a variant was found, let's collect its contributions (also common ones in its + // parent) + for (Path variantContributionPath : Files.newDirectoryStream(variantPath.getParent())) { + String variantContributionId = variantContributionPath.getFileName().toString(); + if (variantContributionId.contains(".")) { + A2Contribution contribution = getOrAddContribution(variantContributionId); + contributions.put(variantContributionPath, contribution); + } } - } - for (Path variantContributionPath : Files.newDirectoryStream(variantPath)) { - String variantContributionId = variantContributionPath.getFileName().toString(); - if (variantContributionId.contains(".")) { - A2Contribution contribution = getOrAddContribution(variantContributionId); - contributions.put(variantContributionPath, contribution); + for (Path variantContributionPath : Files.newDirectoryStream(variantPath)) { + String variantContributionId = variantContributionPath.getFileName().toString(); + if (variantContributionId.contains(".")) { + A2Contribution contribution = getOrAddContribution(variantContributionId); + contributions.put(variantContributionPath, contribution); + } } } } -- 2.30.2