diff options
| author | Remi Collet <remi@remirepo.net> | 2026-07-06 07:15:15 +0200 |
|---|---|---|
| committer | Remi Collet <remi@php.net> | 2026-07-06 07:15:15 +0200 |
| commit | f65b1ee4b76dd43290c20a6c1bd9146cdcdc627d (patch) | |
| tree | f449bcd1492acde168cb409e2dc1033410737419 /heif.patch | |
| parent | 4086b08ef70612eeb024f5cba37fcdbafc00e8df (diff) | |
update to version 7.1.2 patch level 27
drop patch merged upstream
Diffstat (limited to 'heif.patch')
| -rw-r--r-- | heif.patch | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/heif.patch b/heif.patch new file mode 100644 index 0000000..0812295 --- /dev/null +++ b/heif.patch @@ -0,0 +1,117 @@ +From c893eb2386365afce7b43179c622b62fe88302d4 Mon Sep 17 00:00:00 2001 +From: Dirk Lemstra <dirk@lemstra.org> +Date: Sat, 4 Jul 2026 10:06:57 +0200 +Subject: [PATCH] Require at least version 1.11.0 of the libheif library. + +--- + coders/heic.c | 17 ++--------------- + configure.ac | 2 +- + 2 files changed, 3 insertions(+), 16 deletions(-) + +diff --git a/coders/heic.c b/coders/heic.c +index 449f0e1ff5d..d7cae5b29fc 100644 +--- a/coders/heic.c ++++ b/coders/heic.c +@@ -87,7 +87,8 @@ + #include <libheif/heif_sequences.h> + #endif + #endif +- ++ ++ + #if defined(MAGICKCORE_HEIC_DELEGATE) + /* + Forward declarations. +@@ -1034,10 +1035,8 @@ static Image *ReadHEICImage(const ImageInfo *image_info,ExceptionInfo *exception + #endif + ThrowReaderException(CoderError,"ImageTypeNotSupported"); + (void) CloseBlob(image); +-#if LIBHEIF_NUMERIC_VERSION >= HEIC_COMPUTE_NUMERIC_VERSION(1,11,0) + if (heif_has_compatible_brand(magic,sizeof(magic), "avif") == 1) + (void) CopyMagickString(image->magick,"AVIF",MagickPathExtent); +-#endif + /* + Decode HEIF image. + */ +@@ -1250,7 +1249,6 @@ ModuleExport size_t RegisterHEICImage(void) + entry->flags|=CoderDecoderSeekableStreamFlag; + entry->flags^=CoderBlobSupportFlag; + (void) RegisterMagickInfo(entry); +-#if LIBHEIF_NUMERIC_VERSION >= HEIC_COMPUTE_NUMERIC_VERSION(1,7,0) + entry=AcquireMagickInfo("HEIC","AVCI","AVC Image File Format"); + #if defined(MAGICKCORE_HEIC_DELEGATE) + if (heif_have_decoder_for_format(heif_compression_AVC)) +@@ -1266,8 +1264,6 @@ ModuleExport size_t RegisterHEICImage(void) + entry->flags|=CoderDecoderSeekableStreamFlag; + entry->flags^=CoderBlobSupportFlag; + (void) RegisterMagickInfo(entry); +-#endif +-#if LIBHEIF_NUMERIC_VERSION >= HEIC_COMPUTE_NUMERIC_VERSION(1,7,0) + entry=AcquireMagickInfo("HEIC","AVIF","AV1 Image File Format"); + #if defined(MAGICKCORE_HEIC_DELEGATE) + if (heif_have_decoder_for_format(heif_compression_AV1)) +@@ -1283,7 +1279,6 @@ ModuleExport size_t RegisterHEICImage(void) + entry->flags|=CoderDecoderSeekableStreamFlag; + entry->flags^=CoderBlobSupportFlag; + (void) RegisterMagickInfo(entry); +-#endif + return(MagickImageCoderSignature); + } + +@@ -1308,9 +1303,7 @@ ModuleExport size_t RegisterHEICImage(void) + */ + ModuleExport void UnregisterHEICImage(void) + { +-#if LIBHEIF_NUMERIC_VERSION >= HEIC_COMPUTE_NUMERIC_VERSION(1,7,0) + (void) UnregisterMagickInfo("AVIF"); +-#endif + (void) UnregisterMagickInfo("HEIC"); + (void) UnregisterMagickInfo("HEIF"); + #if defined(MAGICKCORE_HEIC_DELEGATE) +@@ -2357,9 +2350,7 @@ static MagickBooleanType WriteHEICImage(const ImageInfo *image_info, + Image *image,ExceptionInfo *exception) + { + MagickBooleanType +-#if LIBHEIF_NUMERIC_VERSION >= HEIC_COMPUTE_NUMERIC_VERSION(1,7,0) + encode_avif, +-#endif + status; + + MagickOffsetType +@@ -2391,10 +2382,8 @@ static MagickBooleanType WriteHEICImage(const ImageInfo *image_info, + return(status); + scene=0; + heif_context=heif_context_alloc(); +-#if LIBHEIF_NUMERIC_VERSION >= HEIC_COMPUTE_NUMERIC_VERSION(1,7,0) + encode_avif=(LocaleCompare(image_info->magick,"AVIF") == 0) ? MagickTrue : + MagickFalse; +-#endif + #if LIBHEIF_NUMERIC_VERSION >= HEIC_COMPUTE_NUMERIC_VERSION(1,20,0) + if ((encode_avif != MagickFalse) && (image_info->adjoin != MagickFalse) && + (GetNextImageInList(image) != (Image *) NULL)) +@@ -2457,12 +2446,10 @@ static MagickBooleanType WriteHEICImage(const ImageInfo *image_info, + /* + Get encoder for the specified format. + */ +-#if LIBHEIF_NUMERIC_VERSION >= HEIC_COMPUTE_NUMERIC_VERSION(1,7,0) + if (encode_avif != MagickFalse) + error=heif_context_get_encoder_for_format(heif_context, + heif_compression_AV1,&heif_encoder); + else +-#endif + error=heif_context_get_encoder_for_format(heif_context, + heif_compression_HEVC,&heif_encoder); + if (IsHEIFSuccess(image,&error,exception) == MagickFalse) +diff --git a/configure.ac b/configure.ac +index 548268ea02e..3776989ef04 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2386,7 +2386,7 @@ HEIF_LIBS="" + HEIF_PKG="" + if test "x$with_heic" = "xyes"; then + AC_MSG_RESULT([-------------------------------------------------------------]) +- PKG_CHECK_MODULES([HEIF],[libheif >= 1.4.0],[have_heic=yes],[have_heic=no]) ++ PKG_CHECK_MODULES([HEIF],[libheif >= 1.11.0],[have_heic=yes],[have_heic=no]) + AC_MSG_RESULT([]) + fi + |
