diff --git a/lib/private/Repair/RepairMimeTypes.php b/lib/private/Repair/RepairMimeTypes.php
index 2b2591756230c425935ef05c632c5d4c4e638e62..93104ce34e1618ddd986c79b0e42f2af8c5ee050 100644
--- a/lib/private/Repair/RepairMimeTypes.php
+++ b/lib/private/Repair/RepairMimeTypes.php
@@ -162,6 +162,19 @@ class RepairMimeTypes implements IRepairStep {
 		return $this->updateMimetypes($updatedMimetypes);
 	}
 
+	private function introduceVisioTypes() {
+		$updatedMimetypes = [
+			'vsdm' => 'application/vnd.visio',
+			'vsdx' => 'application/vnd.visio',
+			'vssm' => 'application/vnd.visio',
+			'vssx' => 'application/vnd.visio',
+			'vstm' => 'application/vnd.visio',
+			'vstx' => 'application/vnd.visio',
+		];
+
+		return $this->updateMimetypes($updatedMimetypes);
+	}
+
 	/**
 	 * Fix mime types
 	 */
@@ -191,5 +204,9 @@ class RepairMimeTypes implements IRepairStep {
 		if (version_compare($ocVersionFromBeforeUpdate, '13.0.0.6', '<') && $this->introduceStreamingTypes()) {
 			$out->info('Fixed streaming mime types');
 		}
+
+		if (version_compare($ocVersionFromBeforeUpdate, '14.0.0.8', '<') && $this->introduceVisioTypes()) {
+			$out->info('Fixed visio mime types');
+		}
 	}
 }
diff --git a/resources/config/mimetypealiases.dist.json b/resources/config/mimetypealiases.dist.json
index 2c2ea28059c477ab3e72525c0ab832b9a6f541cb..eea7081dd711c48b7e0d0cc28f63c51571f807e5 100644
--- a/resources/config/mimetypealiases.dist.json
+++ b/resources/config/mimetypealiases.dist.json
@@ -40,6 +40,12 @@
 	"application/vnd.ms-powerpoint.presentation.macroEnabled.12": "x-office/presentation",
 	"application/vnd.ms-powerpoint.slideshow.macroEnabled.12": "x-office/presentation",
 	"application/vnd.ms-powerpoint.template.macroEnabled.12": "x-office/presentation",
+	"application/vnd.ms-visio.drawing.macroEnabled.12": "application/vnd.visio",
+	"application/vnd.ms-visio.drawing": "application/vnd.visio",
+	"application/vnd.ms-visio.stencil.macroEnabled.12": "application/vnd.visio",
+	"application/vnd.ms-visio.stencil": "application/vnd.visio",
+	"application/vnd.ms-visio.template.macroEnabled.12": "application/vnd.visio",
+	"application/vnd.ms-visio.template": "application/vnd.visio",
 	"application/vnd.ms-word.document.macroEnabled.12": "x-office/document",
 	"application/vnd.ms-word.template.macroEnabled.12": "x-office/document",
 	"application/vnd.oasis.opendocument.presentation": "x-office/presentation",
diff --git a/resources/config/mimetypemapping.dist.json b/resources/config/mimetypemapping.dist.json
index ef3de4d75dcff2687aecdd20464ef485680a25ac..2f16e45a4a84484597bfc0b48bd8ada3765920b1 100644
--- a/resources/config/mimetypemapping.dist.json
+++ b/resources/config/mimetypemapping.dist.json
@@ -176,6 +176,12 @@
 	"vcf": ["text/vcard"],
 	"vob": ["video/dvd"],
 	"vsd": ["application/vnd.visio"],
+	"vsdm": ["application/vnd.ms-visio.drawing.macroEnabled.12"],
+	"vsdx": ["application/vnd.ms-visio.drawing"],
+	"vssm": ["application/vnd.ms-visio.stencil.macroEnabled.12"],
+	"vssx": ["application/vnd.ms-visio.stencil"],
+	"vstm": ["application/vnd.ms-visio.template.macroEnabled.12"],
+	"vstx": ["application/vnd.ms-visio.template"],
 	"wav": ["audio/wav"],
 	"webm": ["video/webm"],
 	"webp": ["image/webp"],
diff --git a/version.php b/version.php
index f0a00a9e50b9707a68fb19cea086908e45e9c991..13501453cc64044472e65b1e17d3e45f8ea9d034 100644
--- a/version.php
+++ b/version.php
@@ -29,7 +29,7 @@
 // between betas, final and RCs. This is _not_ the public version number. Reset minor/patchlevel
 // when updating major/minor version number.
 
-$OC_Version = array(14, 0, 0, 7);
+$OC_Version = array(14, 0, 0, 8);
 
 // The human readable string
 $OC_VersionString = '14.0.0 alpha';