From 3afd43e265b53a8b1c6ff973978a1053d4b574e6 Mon Sep 17 00:00:00 2001
From: Cristy <urban-warrior@imagemagick.org>
Date: Thu, 25 Jan 2018 07:15:55 -0500
Subject: [PATCH] Eliminate Use-of-uninitialized-value in PerceptibleReciprocal
 Credit OSS Fuzz

---
 MagickCore/geometry.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/MagickCore/geometry.c b/MagickCore/geometry.c
index 7cc3b06a5..686ccb6df 100644
--- a/MagickCore/geometry.c
+++ b/MagickCore/geometry.c
@@ -869,6 +869,7 @@ MagickExport MagickStatusType ParseGeometry(const char *geometry,
     Remove whitespaces meta characters from geometry specification.
   */
   assert(geometry_info != (GeometryInfo *) NULL);
+  (void) ResetMagickMemory(geometry_info,0,sizeof(geometry_info));
   flags=NoValue;
   if ((geometry == (char *) NULL) || (*geometry == '\0'))
     return(flags);
@@ -1119,7 +1120,8 @@ MagickExport MagickStatusType ParseGeometry(const char *geometry,
       /*
         Normalize sampling factor (e.g. 4:2:2 => 2x1).
       */
-      geometry_info->rho*=PerceptibleReciprocal(geometry_info->sigma);
+      if ((flags & SigmaValue) != 0)
+        geometry_info->rho*=PerceptibleReciprocal(geometry_info->sigma);
       geometry_info->sigma=1.0;
       if (geometry_info->xi == 0.0)
         geometry_info->sigma=2.0;
-- 
2.40.0