Fix memory leaks in the new error return from modinv.
[sgt/putty] / sshbn.c
diff --git a/sshbn.c b/sshbn.c
index a206783..ec7d3a6 100644 (file)
--- a/sshbn.c
+++ b/sshbn.c
@@ -1642,6 +1642,10 @@ Bignum modinv(Bignum number, Bignum modulus)
              * Found a common factor between the inputs, so we cannot
              * return a modular inverse at all.
              */
+            freebn(b);
+            freebn(a);
+            freebn(xp);
+            freebn(x);
             return NULL;
         }