]> granicus.if.org Git - imagemagick/commitdiff
Added missing calls to xmlFreeDoc to fix memory leak reported in #1766. master
authorDirk Lemstra <dirk@lemstra.org>
Sun, 27 Oct 2019 20:25:25 +0000 (21:25 +0100)
committerDirk Lemstra <dirk@lemstra.org>
Sun, 27 Oct 2019 20:25:25 +0000 (21:25 +0100)
coders/msl.c
coders/svg.c

index 514356796130d11b6a1888c9d094332d832775f6..d3659cf0b7ec300579761d25e8fe8ce530d7fc7f 100644 (file)
@@ -7914,6 +7914,8 @@ static MagickBooleanType ProcessMSLScript(const ImageInfo *image_info,
   /*
     Free resources.
   */
+  if (msl_info.parser->myDoc != (xmlDocPtr) NULL)
+    xmlFreeDoc(msl_info.parser->myDoc);
   xmlFreeParserCtxt(msl_info.parser);
   (void) LogMagickEvent(CoderEvent,GetMagickModule(),"end SAX");
   if (*image == (Image *) NULL)
index 48fcd3b1b744188bf3637a21b1314e753916671f..55cba55648a4dc30d3e191a1e82110703c755047 100644 (file)
@@ -3600,6 +3600,8 @@ static Image *ReadSVGImage(const ImageInfo *image_info,ExceptionInfo *exception)
     }
   (void) xmlParseChunk(svg_info->parser,(char *) message,0,1);
   SVGEndDocument(svg_info);
+  if (svg_info->parser->myDoc != (xmlDocPtr) NULL)
+    xmlFreeDoc(svg_info->parser->myDoc);
   xmlFreeParserCtxt(svg_info->parser);
   if (image->debug != MagickFalse)
     (void) LogMagickEvent(CoderEvent,GetMagickModule(),"end SAX");