From b7499222b87e493e3ce480fab79913ea9d7982ba Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Sat, 8 Feb 2025 10:09:38 +0000 Subject: [PATCH] Fix possible NPE when moving to snapshots See gh-43045 --- .../boot/build/bom/bomr/MoveToSnapshots.java | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/buildSrc/src/main/java/org/springframework/boot/build/bom/bomr/MoveToSnapshots.java b/buildSrc/src/main/java/org/springframework/boot/build/bom/bomr/MoveToSnapshots.java index cecc5394be3..f5f885be8d1 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/bom/bomr/MoveToSnapshots.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/bom/bomr/MoveToSnapshots.java @@ -92,19 +92,21 @@ public abstract class MoveToSnapshots extends UpgradeDependencies { VersionOption versionOption = resolver.apply(library, dependencyVersion); if (versionOption != null) { List releases = scheduledReleases.get(library.getCalendarName()); - List matches = releases.stream() - .filter((release) -> dependencyVersion.isSnapshotFor(release.getVersion())) - .toList(); - if (matches.isEmpty()) { - if (logger.isInfoEnabled()) { - logger.info("Ignoring {}. No release of {} scheduled before {}", dependencyVersion, - library.getName(), milestone.getDueOn()); + if (releases != null) { + List matches = releases.stream() + .filter((release) -> dependencyVersion.isSnapshotFor(release.getVersion())) + .toList(); + if (!matches.isEmpty()) { + return new VersionOption.SnapshotVersionOption(versionOption.getVersion(), + matches.get(0).getVersion()); } - return null; } - return new VersionOption.SnapshotVersionOption(versionOption.getVersion(), matches.get(0).getVersion()); + if (logger.isInfoEnabled()) { + logger.info("Ignoring {}. No release of {} scheduled before {}", dependencyVersion, + library.getName(), milestone.getDueOn()); + } } - return versionOption; + return null; }; }