From 993819c9d2e182a0d3d711cc1f3cb6ff4f536330 Mon Sep 17 00:00:00 2001
From: srosse <stephane.rosse@frentix.com>
Date: Thu, 27 Aug 2020 10:23:59 +0200
Subject: [PATCH] OO-4876: escape line breaks of the meeting description

---
 .../ui/BigBlueButtonGuestJoinController.java              | 8 ++++++--
 .../bigbluebutton/ui/BigBlueButtonMeetingController.java  | 8 ++++++--
 2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonGuestJoinController.java b/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonGuestJoinController.java
index a005cf6b283..8f61b7b0e55 100644
--- a/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonGuestJoinController.java
+++ b/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonGuestJoinController.java
@@ -122,8 +122,12 @@ public class BigBlueButtonGuestJoinController extends FormBasicController implem
 				&& !Boolean.TRUE.equals(ureq.getUserSession().getEntry("meeting-" + meeting.getKey()))) {
 			FormLayoutContainer layoutCont = (FormLayoutContainer)formLayout;
 			layoutCont.contextPut("title", meeting.getName());
-			if(StringHelper.containsNonWhitespace(meeting.getDescription())) {
-				layoutCont.contextPut("description", meeting.getDescription());
+			String descr = meeting.getDescription();
+			if(StringHelper.containsNonWhitespace(descr)) {
+				if(!StringHelper.isHtml(descr)) {
+					descr = Formatter.escWithBR(descr).toString();
+				}
+				layoutCont.contextPut("description", descr);
 			}
 			if(meeting.getStartDate() != null) {
 				String start = Formatter.getInstance(getLocale()).formatDateAndTime(meeting.getStartDate());
diff --git a/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonMeetingController.java b/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonMeetingController.java
index d0936135988..1ff808d6935 100644
--- a/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonMeetingController.java
+++ b/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonMeetingController.java
@@ -141,8 +141,12 @@ public class BigBlueButtonMeetingController extends FormBasicController implemen
 		if(formLayout instanceof FormLayoutContainer) {
 			FormLayoutContainer layoutCont = (FormLayoutContainer)formLayout;
 			layoutCont.contextPut("title", meeting.getName());
-			if(StringHelper.containsNonWhitespace(meeting.getDescription())) {
-				layoutCont.contextPut("description", meeting.getDescription());
+			String descr = meeting.getDescription();
+			if(StringHelper.containsNonWhitespace(descr)) {
+				if(!StringHelper.isHtml(descr)) {
+					descr = Formatter.escWithBR(descr).toString();
+				}
+				layoutCont.contextPut("description", descr);
 			}
 			if(meeting.getStartDate() != null) {
 				String start = Formatter.getInstance(getLocale()).formatDateAndTime(meeting.getStartDate());
-- 
GitLab