From 1b89b2b729238758a98c596c256a1d5753fa5670 Mon Sep 17 00:00:00 2001 From: Cristy Date: Wed, 19 Jan 2022 18:40:35 -0500 Subject: [PATCH] AVIF is supported by the HEIC coder --- coders/heic.c | 18 +++++++----------- coders/miff.c | 4 ++-- coders/mpc.c | 7 +++---- 3 files changed, 12 insertions(+), 17 deletions(-) diff --git a/coders/heic.c b/coders/heic.c index c17ec7848c..29c5fbc0a9 100644 --- a/coders/heic.c +++ b/coders/heic.c @@ -586,20 +586,16 @@ static Image *ReadHEICImage(const ImageInfo *image_info, */ static MagickBooleanType IsHEIC(const unsigned char *magick,const size_t length) { +#if defined(MAGICKCORE_HEIC_DELEGATE) + enum heif_filetype_result + heif_filetype; + if (length < 12) return(MagickFalse); - if (LocaleNCompare((const char *) magick+4,"ftyp",4) != 0) - return(MagickFalse); - if (LocaleNCompare((const char *) magick+8,"avif",4) == 0) - return(MagickTrue); - if (LocaleNCompare((const char *) magick+8,"heic",4) == 0) - return(MagickTrue); - if (LocaleNCompare((const char *) magick+8,"heix",4) == 0) - return(MagickTrue); - if (LocaleNCompare((const char *) magick+8,"mif1",4) == 0) - return(MagickTrue); - if (LocaleNCompare((const char *) magick+8,"msf1",4) == 0) + heif_filetype=heif_check_filetype(magick,(int) length); + if (heif_filetype == heif_filetype_yes_supported) return(MagickTrue); +#endif return(MagickFalse); }