diff --git a/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_de.properties
index 8f57012f6de7827daada5fea481f86209e404661..8ff540c5cb04c96d7aad85a0bd9dadadb744b36a 100644
--- a/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_de.properties
+++ b/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_de.properties
@@ -136,6 +136,7 @@ versions=Versionen
 versions.revisions=Versionen
 versions.revisions.of=Versionen von "{0}"
 warning.file.selection.empty=Sie m\u00FCssen mindestens eine Datei w\u00E4hlen.
+warning.file.not.found=Die Operation konnte nicht ausgef\u00FChrt werden\: Datei konnte nicht gefunden werden.
 webdav.link=WebDAV Link
 webdav.link.http=Bei Verbindungsproblemen unter Windows kann alternativ der folgende Link verwendet werden. Weitere Informationen finden Sie in der Kontexthilfe. 
 zip=Zippen
diff --git a/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_en.properties
index d956971c7c98dcb6d58d2749ebe56e29100aa80e..65b73cfbc6516022a78476c8cb3d0eb7a5049f92 100644
--- a/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_en.properties
+++ b/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_en.properties
@@ -136,6 +136,7 @@ versions=Versions
 versions.revisions=Versions
 versions.revisions.of=Versions of "{0}"
 warning.file.selection.empty=You need to choose at least one file.
+warning.file.not.found=Operation incomplete\: file not found.
 webdav.link=WebDAV link
 webdav.link.http=When you encounter connection problems the following alternative link can be used. See the context help for more information. 
 zip=Zip
diff --git a/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_fr.properties
index d9ed7afcfd97efbdfc2e82cf743c92d2ab9d5e0d..fdcb38021b36f2ec64112a78becdbc75accd97b8 100644
--- a/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_fr.properties
+++ b/src/main/java/org/olat/core/commons/modules/bc/_i18n/LocalStrings_fr.properties
@@ -135,6 +135,7 @@ unzip.alreadyexists=Un dossier avec le nom {0} existe d\u00E9j\u00E0. Vous avez
 versions=Versions
 versions.revisions=Versions
 versions.revisions.of=Versions de "{0}"
+warning.file.not.found=L'op\u00E9ration n'a pas pu \u00EAtre ex\u00E9cut\u00E9e. Le fichier n'a pas pu \u00EAtre trouv\u00E9.
 warning.file.selection.empty=Vous devez choisir au moins un fichier.
 webdav.link=Lien WebDAV
 webdav.link.http=Pour le client natif sous Window, il est parfois plus facile d'utiliser ce
diff --git a/src/main/java/org/olat/core/commons/modules/bc/commands/CmdEditMeta.java b/src/main/java/org/olat/core/commons/modules/bc/commands/CmdEditMeta.java
index 243cd62028ccfd4f25cdb605766636274f0a790b..25eac641f38dd8148143620c7bd350aab8426b63 100644
--- a/src/main/java/org/olat/core/commons/modules/bc/commands/CmdEditMeta.java
+++ b/src/main/java/org/olat/core/commons/modules/bc/commands/CmdEditMeta.java
@@ -26,6 +26,8 @@
 
 package org.olat.core.commons.modules.bc.commands;
 
+import java.util.List;
+
 import org.olat.core.commons.modules.bc.FolderEvent;
 import org.olat.core.commons.modules.bc.components.FolderComponent;
 import org.olat.core.commons.modules.bc.components.ListRenderer;
@@ -87,8 +89,8 @@ public class CmdEditMeta extends BasicController implements FolderCommand {
 			UserRequest ureq, WindowControl wControl, Translator trans) {
 		this.translator = trans;
 		this.folderComponent = fComponent;
-		String pos = ureq.getParameter(ListRenderer.PARAM_EDTID);
-		if (!StringHelper.containsNonWhitespace(pos)) {
+		String posString = ureq.getParameter(ListRenderer.PARAM_EDTID);
+		if (!StringHelper.isLong(posString)) {
 			// somehow parameter did not make it to us
 			status = FolderCommandStatus.STATUS_FAILED;
 			getWindowControl().setError(translator.translate("failed"));
@@ -97,7 +99,16 @@ public class CmdEditMeta extends BasicController implements FolderCommand {
 		
 		status = FolderCommandHelper.sanityCheck(wControl, fComponent);
 		if(status == FolderCommandStatus.STATUS_SUCCESS) {
-			currentItem = fComponent.getCurrentContainerChildren().get(Integer.parseInt(pos));
+			int pos = Integer.parseInt(posString);
+			List<VFSItem> children = fComponent.getCurrentContainerChildren();
+			if(pos >= 0 && pos < children.size()) {
+				currentItem = children.get(pos);
+			} else {
+				status = FolderCommandStatus.STATUS_FAILED;
+				getWindowControl().setWarning(translator.translate("warning.file.not.found"));
+				fComponent.updateChildren();
+				return null;
+			}
 		}
 		if(status == FolderCommandStatus.STATUS_FAILED) {
 			return null;
diff --git a/src/main/java/org/olat/course/condition/additionalconditions/PasswordCondition.java b/src/main/java/org/olat/course/condition/additionalconditions/PasswordCondition.java
index dc1481c2cb476138b2e165b778b06f53b8471d59..1e5b0a49e35ed552dba7d54d64a0dd328fa708fb 100644
--- a/src/main/java/org/olat/course/condition/additionalconditions/PasswordCondition.java
+++ b/src/main/java/org/olat/course/condition/additionalconditions/PasswordCondition.java
@@ -54,6 +54,8 @@ public class PasswordCondition extends AdditionalCondition {
 	// <OLATCE-91>
 	@Override
 	public boolean evaluate(Object userAnswerObj) {
+		if(password == null) return true;
+		
 		String userAnswer = null;
 		if(userAnswerObj instanceof IdentityEnvironment) {
 			IdentityEnvironment identityEnv = (IdentityEnvironment)userAnswerObj;
@@ -61,7 +63,7 @@ public class PasswordCondition extends AdditionalCondition {
 		} else if(userAnswerObj instanceof String) {
 			userAnswer = (String)userAnswerObj;
 		}
-		return password == null || password.equals(userAnswer); 
+		return password.equals(userAnswer); 
 	}
 
 	@Override
diff --git a/src/main/java/org/olat/modules/forms/ui/RubricEditorController.java b/src/main/java/org/olat/modules/forms/ui/RubricEditorController.java
index ee9eee8273f0d3a321ae45f1796c00c437c205e3..a9cdbf2514619bfef5295706821bb394bdee0c5c 100644
--- a/src/main/java/org/olat/modules/forms/ui/RubricEditorController.java
+++ b/src/main/java/org/olat/modules/forms/ui/RubricEditorController.java
@@ -647,13 +647,15 @@ public class RubricEditorController extends FormBasicController implements PageE
 	
 	private void swapSliders(int i, int j) {
 		List<Slider> rubricSliders = rubric.getSliders();
-		Slider tempRubricSlider = rubricSliders.get(i);
-		rubricSliders.set(i, rubricSliders.get(j));
-		rubricSliders.set(j, tempRubricSlider);
-		
-		SliderRow tempSlider = sliders.get(i);
-		sliders.set(i, sliders.get(j));
-		sliders.set(j, tempSlider);
+		if(i >= 0 && j >= 0 && i < rubricSliders.size() && j < rubricSliders.size()) {
+			Slider tempRubricSlider = rubricSliders.get(i);
+			rubricSliders.set(i, rubricSliders.get(j));
+			rubricSliders.set(j, tempRubricSlider);
+			
+			SliderRow tempSlider = sliders.get(i);
+			sliders.set(i, sliders.get(j));
+			sliders.set(j, tempSlider);
+		}
 	}
 
 	private void doRemoveSlider(SliderRow row) {