]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseSafeIntLib/SafeIntLib.c
MdePkg/BaseSafeIntLib: fix undefined behavior in SafeInt64Mult()
[mirror_edk2.git] / MdePkg / Library / BaseSafeIntLib / SafeIntLib.c
index de91ffeca2a560b17b0bbc8cd7dd6309b745c9e3..c5f13d7e08285f46f3cf5bcd66afeb7cb593ca38 100644 (file)
@@ -4143,6 +4143,8 @@ SafeInt64Mult (
       if (UnsignedResult > MIN_INT64_MAGNITUDE) {\r
         *Result = INT64_ERROR;\r
         Status = RETURN_BUFFER_TOO_SMALL;\r
+      } else if (UnsignedResult == MIN_INT64_MAGNITUDE) {\r
+        *Result = MIN_INT64;\r
       } else {\r
         *Result = - ((INT64)UnsignedResult);\r
       }\r