From: simon Date: Sun, 20 Feb 2011 15:06:39 +0000 (+0000) Subject: Fix bug in Karatsuba multiplication, which affected propagation of a X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/commitdiff_plain/134a1ab5f9b5976073bfb9a5f723b945ca06533a Fix bug in Karatsuba multiplication, which affected propagation of a carry by more than one word. Now the current set of test cases all pass again. git-svn-id: svn://svn.tartarus.org/sgt/putty@9098 cda61777-01e9-0310-a592-d414129be87e --- diff --git a/sshbn.c b/sshbn.c index 20244e86..cae1bd9e 100644 --- a/sshbn.c +++ b/sshbn.c @@ -386,6 +386,7 @@ static void internal_mul(const BignumInt *a, const BignumInt *b, carry += c[j]; c[j] = (BignumInt)carry; carry >>= BIGNUM_INT_BITS; + j--; } #ifdef KARA_DEBUG printf("ab = 0x");