From 14ba3e46a66c4799d643c7b959792e185c6599c7 Mon Sep 17 00:00:00 2001 From: Cristy Date: Sun, 13 Oct 2019 11:20:29 -0400 Subject: [PATCH] https://github.com/ImageMagick/ImageMagick/issues/1748 --- coders/tiff.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/coders/tiff.c b/coders/tiff.c index c21f546bce..e7e6b67aa0 100644 --- a/coders/tiff.c +++ b/coders/tiff.c @@ -648,9 +648,20 @@ static void TIFFGetProfiles(TIFF *tiff,Image *image) if ((TIFFGetField(tiff,TIFFTAG_XMLPACKET,&length,&profile) == 1) && (profile != (unsigned char *) NULL)) { + StringInfo + *dng; + (void) ReadProfile(image,"xmp",profile,(ssize_t) length); - if (strstr((char *) profile,"dc:format=\"image/dng\"") != (char *) NULL) - (void) CopyMagickString(image->magick,"DNG",MagickPathExtent); + dng=BlobToStringInfo(profile,length); + if (dng != (StringInfo *) NULL) + { + const char + *target = "dc:format=\"image/dng\""; + + if (strstr((char *) GetStringInfoDatum(dng),target) != (char *) NULL) + (void) CopyMagickString(image->magick,"DNG",MagickPathExtent); + dng=DestroyStringInfo(dng); + } } #endif if ((TIFFGetField(tiff,34118,&length,&profile) == 1) &&