diff --git a/pkgs/mime/CHANGELOG.md b/pkgs/mime/CHANGELOG.md index fd5a24905c..7a580e02df 100644 --- a/pkgs/mime/CHANGELOG.md +++ b/pkgs/mime/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.1 +* Add `image/x-canon-cr2` mimeType lookup by extension and header bytes. +* Fix `video/3gpp` detection by switching to broader magic number mask to identify all 3gp releases as `video/3gpp`. + ## 2.0.0 * **[Breaking]** `extensionFromMime(String mimeType)` returns `null` instead of `mimeType` for an unknown mime type. diff --git a/pkgs/mime/lib/src/default_extension_map.dart b/pkgs/mime/lib/src/default_extension_map.dart index 287c957dc5..59536a0b98 100644 --- a/pkgs/mime/lib/src/default_extension_map.dart +++ b/pkgs/mime/lib/src/default_extension_map.dart @@ -131,6 +131,7 @@ const Map defaultExtensionMap = { 'cpio': 'application/x-cpio', 'cpp': 'text/x-c', 'cpt': 'application/mac-compactpro', + 'cr2': 'image/x-canon-cr2', 'crd': 'application/x-mscardfile', 'crl': 'application/pkix-crl', 'crt': 'application/x-x509-ca-cert', diff --git a/pkgs/mime/lib/src/magic_number.dart b/pkgs/mime/lib/src/magic_number.dart index c8b5c3be13..7bcd75ad52 100644 --- a/pkgs/mime/lib/src/magic_number.dart +++ b/pkgs/mime/lib/src/magic_number.dart @@ -103,6 +103,10 @@ const List initialMagicNumbers = [ MagicNumber('image/gif', [0x47, 0x49, 0x46, 0x38, 0x39, 0x61]), MagicNumber('image/jpeg', [0xFF, 0xD8]), MagicNumber('image/png', [0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A]), + MagicNumber( + 'image/x-canon-cr2', // Since CR2 is based on tiff, this MagicNumber needs to be above `image/tiff` + [0x49, 0x49, 0x2A, 0x00, 0x10, 0x00, 0x00, 0x00, 0x43, 0x52, 0x02], + mask: [0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF]), MagicNumber('image/tiff', [0x49, 0x49, 0x2A, 0x00]), MagicNumber('image/tiff', [0x4D, 0x4D, 0x00, 0x2A]), MagicNumber('audio/aac', [0xFF, 0xF1]), @@ -123,7 +127,7 @@ const List initialMagicNumbers = [ 0x33, 0x67, 0x70, - 0x35 + 0x00 ], mask: [ 0xFF, 0xFF, @@ -136,7 +140,7 @@ const List initialMagicNumbers = [ 0xFF, 0xFF, 0xFF, - 0xFF + 0x00 ]), MagicNumber('video/mp4', [ 0x00,