]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Mimetypes like image/svg+xml were misinterpreted when guessing
authorMikael Nordfeldth <mmn@hethane.se>
Tue, 12 Jan 2016 12:46:25 +0000 (13:46 +0100)
committerMikael Nordfeldth <mmn@hethane.se>
Tue, 12 Jan 2016 12:46:25 +0000 (13:46 +0100)
We don't really need the mb_ in mb_strtolower but what the heck, why not. I love Unicode.

classes/File.php

index 2390f848de28f420abb06dd211c237ea32467406..beb1f8f3240809627f256f80ecceae853606fbe2 100644 (file)
@@ -264,9 +264,13 @@ class File extends Managed_DataObject
             $ext = common_supported_mime_to_ext($mimetype);
         } catch (Exception $e) {
             // We don't support this mimetype, but let's guess the extension
-            $ext = substr(strrchr($mimetype, '/'), 1);
+            $matches = array();
+            if (!preg_match('/\/([a-z0-9]+)/', mb_strtolower($mimetype), $matches)) {
+                throw new Exception('Malformed mimetype: '.$mimetype);
+            }
+            $ext = $matches[1];
         }
-        return strtolower($ext);
+        return mb_strtolower($ext);
     }
 
     /**