diff --git a/src/main/java/org/olat/user/ProfileFormController.java b/src/main/java/org/olat/user/ProfileFormController.java
index c2b25d24ce403fc4a38a2fe36f79136ef18d76d6..0ba1d0ee6cbf9e19080e6042a94badc23b7deb4b 100644
--- a/src/main/java/org/olat/user/ProfileFormController.java
+++ b/src/main/java/org/olat/user/ProfileFormController.java
@@ -98,6 +98,8 @@ public class ProfileFormController extends FormBasicController {
 	private final boolean isAdministrativeUser;
 	private final List<UserPropertyHandler> userPropertyHandlers;
 	
+	private boolean portraitDeleted = false;
+	private boolean logoDeleted = false;
 	private boolean emailChanged = false;
 	private String changedEmail;
 	private String currentEmail;
@@ -386,19 +388,12 @@ public class ProfileFormController extends FormBasicController {
 		 if (source == portraitUpload) {
 			if(event instanceof FileElementEvent) {
 				if(FileElementEvent.DELETE.equals(event.getCommand())) {
-					File img = dps.getLargestPortrait(identityToModify.getName());
+					portraitDeleted = true;
+					portraitUpload.setInitialFile(null);
 					if(portraitUpload.getUploadFile() != null) {
 						portraitUpload.reset();
-						if(img != null) {
-							portraitUpload.setInitialFile(img);
-						}
-					} else if(img != null) {
-						dps.deletePortrait(identityToModify);
-						portraitUpload.setInitialFile(null);
-						notifyPortraitChanged();
 					}
 					flc.setDirty(true);
-					
 				}
 			} else if (portraitUpload.isUploadSuccess()) {
 				flc.setDirty(true);
@@ -406,19 +401,12 @@ public class ProfileFormController extends FormBasicController {
 		} else if (source == logoUpload) {
 			if(event instanceof FileElementEvent) {
 				if(FileElementEvent.DELETE.equals(event.getCommand())) {
-					File img = dps.getLargestLogo(identityToModify.getName());
+					logoDeleted = true;
+					logoUpload.setInitialFile(null);
 					if(logoUpload.getUploadFile() != null) {
 						logoUpload.reset();
-						if(img != null) {
-							logoUpload.setInitialFile(img);
-						}
-					} else if(img != null) {
-						dps.deleteLogo(identityToModify);
-						logoUpload.setInitialFile(null);
-						notifyPortraitChanged();
 					}
 					flc.setDirty(true);
-					
 				}
 			} else if (logoUpload.isUploadSuccess()) {
 				flc.setDirty(true);
@@ -445,6 +433,14 @@ public class ProfileFormController extends FormBasicController {
 			}
 		}
 		
+		if (portraitDeleted) {
+			File img = dps.getLargestPortrait(identityToModify.getName());
+			if(img != null) {
+				dps.deletePortrait(identityToModify);
+				notifyPortraitChanged();
+			}
+		}
+		
 		File uploadedImage = portraitUpload.getUploadFile();
 		String uploadedFilename = portraitUpload.getUploadFileName();
 		if(uploadedImage != null) {
@@ -452,6 +448,14 @@ public class ProfileFormController extends FormBasicController {
 			notifyPortraitChanged();
 		}
 		
+		if (logoDeleted) {
+			File img = dps.getLargestLogo(identityToModify.getName());
+			if(img != null) {
+				dps.deleteLogo(identityToModify);
+				notifyPortraitChanged();
+			}
+		}
+		
 		if(logoUpload != null) {
 			File uploadedLogo = logoUpload.getUploadFile();
 			String uploadedLogoname = logoUpload.getUploadFileName();