From b69628fe23511900ac36fdcd74d70b2cc92a4dd6 Mon Sep 17 00:00:00 2001 From: Thomas Mortagne <thomas.mortagne@gmail.com> Date: Mon, 29 Jul 2024 16:09:14 +0200 Subject: [PATCH] XWIKI-22365: Possible nullpointerexception when getting the extension index status (cherry picked from commit 2fe73a6282f2fa3d061481d5d1b5a93726dadc69) --- .../index/internal/job/ExtensionIndexJobScheduler.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-index/src/main/java/org/xwiki/extension/index/internal/job/ExtensionIndexJobScheduler.java b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-index/src/main/java/org/xwiki/extension/index/internal/job/ExtensionIndexJobScheduler.java index ec54c5b9bd1..5b26e35feef 100644 --- a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-index/src/main/java/org/xwiki/extension/index/internal/job/ExtensionIndexJobScheduler.java +++ b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-index/src/main/java/org/xwiki/extension/index/internal/job/ExtensionIndexJobScheduler.java @@ -165,7 +165,7 @@ public ExtensionIndexStatus getStatus(Namespace namespace) ExtensionIndexStatus scheduledStatus = !id.equals(this.scheduledRequest.getId()) ? (ExtensionIndexStatus) this.jobStore.getJobStatus(this.scheduledRequest.getId()) : null; - if (namespaceStatus != null + if (hasAStartDate(namespaceStatus) && (scheduledStatus == null || namespaceStatus.getStartDate().after(scheduledStatus.getStartDate()) || !((ExtensionIndexRequest) scheduledStatus.getRequest()).getNamespaces().contains(namespace))) { return namespaceStatus; @@ -174,6 +174,11 @@ public ExtensionIndexStatus getStatus(Namespace namespace) return scheduledStatus; } + private boolean hasAStartDate(ExtensionIndexStatus status) + { + return status != null && status.getStartDate() != null; + } + /** * @param namespace the new namespace to analyze */ -- GitLab