]> granicus.if.org Git - imagemagick/commitdiff
Eliminate fault when trace delegate is not available
authorCristy <urban-warrior@imagemagick.org>
Tue, 10 Sep 2019 00:05:44 +0000 (20:05 -0400)
committerCristy <urban-warrior@imagemagick.org>
Tue, 10 Sep 2019 00:05:44 +0000 (20:05 -0400)
ChangeLog
coders/svg.c

index 9816fe6556a60a71cb4aa4cc2ef3d5e6e27e8d88..2afab3082ed99b2016a8b6405161932dd7cce1eb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2019-09-09  7.0.8-65 Cristy  <quetzlzacatenango@image...>
+  * Release ImageMagick version 7.0.8-65, GIT revision 16...
+
+2019-09-09  7.0.8-65 Cristy  <quetzlzacatenango@image...>
+  * Eliminate fault when trace delegate is not available.
+
 2019-09-07  7.0.8-64 Cristy  <quetzlzacatenango@image...>
   * Release ImageMagick version 7.0.8-64, GIT revision 16108:2ad3cbc:20190907.
 
index 39f5a1d5cb27776d6c1c3e961c2fcf115d1946b8..5faaab034d1b6a9d5f7ff22e60a7f2c0f7138950 100644 (file)
@@ -3982,6 +3982,9 @@ static MagickBooleanType TraceSVGImage(Image *image,ExceptionInfo *exception)
       filename[MagickPathExtent],
       message[MagickPathExtent];
 
+    const DelegateInfo
+      *delegate_info;
+
     Image
       *clone_image;
 
@@ -4004,15 +4007,21 @@ static MagickBooleanType TraceSVGImage(Image *image,ExceptionInfo *exception)
     unsigned char
       *blob;
 
-    image_info=AcquireImageInfo();
-    (void) CopyMagickString(image_info->magick,"TRACE",MagickPathExtent);
-    (void) FormatLocaleString(filename,MagickPathExtent,"trace:%s",
-      image_info->filename);
-    (void) CopyMagickString(image_info->filename,filename,MagickPathExtent);
-    status=WriteImage(image_info,image,exception);
-    image_info=DestroyImageInfo(image_info);
-    if (status != MagickFalse)
-      return(status);
+    delegate_info=GetDelegateInfo((char *) NULL,"TRACE",exception);
+    if (delegate_info != (DelegateInfo *) NULL)
+      {
+        /*
+          Trace SVG with tracing delegate.
+        */
+        image_info=AcquireImageInfo();
+        (void) CopyMagickString(image_info->magick,"TRACE",MagickPathExtent);
+        (void) FormatLocaleString(filename,MagickPathExtent,"trace:%s",
+          image_info->filename);
+        (void) CopyMagickString(image_info->filename,filename,MagickPathExtent);
+        status=WriteImage(image_info,image,exception);
+        image_info=DestroyImageInfo(image_info);
+        return(status);
+      }
     (void) WriteBlobString(image,
       "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n");
     (void) WriteBlobString(image,