From c881993c2521ec6e640ee8ec5de54adb210c5db0 Mon Sep 17 00:00:00 2001
From: srosse <none@none>
Date: Thu, 3 May 2012 09:22:27 +0200
Subject: [PATCH] OO-244: prevent a rare timing condition if someone logout and
 open a new browser while a thumbnail is generated (in the real case, the
 creation of the thumbnail takes 3 minutes)

---
 .../olat/core/commons/modules/bc/FolderRunController.java   | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/main/java/org/olat/core/commons/modules/bc/FolderRunController.java b/src/main/java/org/olat/core/commons/modules/bc/FolderRunController.java
index 0d9723be73a..9249c3b8347 100644
--- a/src/main/java/org/olat/core/commons/modules/bc/FolderRunController.java
+++ b/src/main/java/org/olat/core/commons/modules/bc/FolderRunController.java
@@ -429,7 +429,11 @@ public class FolderRunController extends BasicController implements Activateable
 	}
 
 	private void enableDisableQuota(UserRequest ureq) {
-		if (!ureq.getUserSession().getRoles().isOLATAdmin()) {
+		//prevent a timing condition if the user logout while a thumbnail is generated
+		if (ureq.getUserSession() == null || ureq.getUserSession().getRoles() == null) {
+			folderContainer.contextPut("editQuota", Boolean.FALSE);
+			return;
+		} else if (!ureq.getUserSession().getRoles().isOLATAdmin()) {
 			if (!ureq.getUserSession().getRoles().isInstitutionalResourceManager()) {
 				folderContainer.contextPut("editQuota", Boolean.FALSE);
 				return;
-- 
GitLab