From d1a956113554d3be174207d90770eb5d4875cd46 Mon Sep 17 00:00:00 2001
From: Hiramiya <Hiramiya@users.noreply.github.com>
Date: Mon, 27 Aug 2018 20:03:28 +0100
Subject: [PATCH] Restrict avatar filetypes

---
 src/client/app/desktop/api/update-avatar.ts | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/src/client/app/desktop/api/update-avatar.ts b/src/client/app/desktop/api/update-avatar.ts
index 18b912d148..f07dc623f2 100644
--- a/src/client/app/desktop/api/update-avatar.ts
+++ b/src/client/app/desktop/api/update-avatar.ts
@@ -6,6 +6,19 @@ import ProgressDialog from '../views/components/progress-dialog.vue';
 export default (os: OS) => {
 
 	const cropImage = file => new Promise((resolve, reject) => {
+		
+		var regex = RegExp('\.(jpg|jpeg|png|gif|webp|bmp|tiff)$')
+		if(!regex.test(file.name) ) {
+			os.apis.dialog({
+				title: '%fa:info-circle% %i18n:desktop.invalid-filetype%',
+				text: null,
+				actions: [{
+					text: '%i18n:common.got-it%'
+				}]
+			});
+			reject
+		}
+		
 		const w = os.new(CropWindow, {
 			image: file,
 			title: '%i18n:desktop.avatar-crop-title%',