From a4460a00b33526ee793949f965a0cde4030084ee Mon Sep 17 00:00:00 2001
From: srosse <stephane.rosse@frentix.com>
Date: Wed, 22 Apr 2020 15:18:05 +0200
Subject: [PATCH] OO-4582: check the life cycle is populated

---
 .../nodes/st/assessment/ConditionPassedEvaluator.java       | 6 +++++-
 .../course/nodes/st/assessment/STRootPassedEvaluator.java   | 3 +++
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/main/java/org/olat/course/nodes/st/assessment/ConditionPassedEvaluator.java b/src/main/java/org/olat/course/nodes/st/assessment/ConditionPassedEvaluator.java
index 1f525fc477b..e0ced14bf1f 100644
--- a/src/main/java/org/olat/course/nodes/st/assessment/ConditionPassedEvaluator.java
+++ b/src/main/java/org/olat/course/nodes/st/assessment/ConditionPassedEvaluator.java
@@ -81,7 +81,11 @@ public class ConditionPassedEvaluator implements PassedEvaluator {
 	
 	private RepositoryEntryLifecycle getRepositoryEntryLifecycle(RepositoryEntry courseEntry) {
 		try {
-			return courseEntry.getLifecycle();
+			RepositoryEntryLifecycle lifecycle = courseEntry.getLifecycle();
+			if(lifecycle != null) {
+				lifecycle.getValidTo();
+			}
+			return lifecycle;
 		} catch (LazyInitializationException e) {
 			RepositoryEntry reloadedEntry = CoreSpringFactory.getImpl(RepositoryService.class)
 					.loadByKey(courseEntry.getKey());
diff --git a/src/main/java/org/olat/course/nodes/st/assessment/STRootPassedEvaluator.java b/src/main/java/org/olat/course/nodes/st/assessment/STRootPassedEvaluator.java
index edf07c2e950..043a797175f 100644
--- a/src/main/java/org/olat/course/nodes/st/assessment/STRootPassedEvaluator.java
+++ b/src/main/java/org/olat/course/nodes/st/assessment/STRootPassedEvaluator.java
@@ -155,6 +155,9 @@ public class STRootPassedEvaluator implements RootPassedEvaluator {
 		if (courseEntry != null) {
 			try {
 				lifecycle = courseEntry.getLifecycle();
+				if(lifecycle != null) {
+					lifecycle.getValidTo();
+				}
 			} catch (LazyInitializationException lie) {
 				RepositoryService repositoryService = CoreSpringFactory.getImpl(RepositoryService.class);
 				RepositoryEntry repositoryEntry = repositoryService.loadByKey(courseEntry.getKey());
-- 
GitLab