Fix a casting bug with the length-independent sshbn code.
[u/mdw/putty] / sshbn.c
diff --git a/sshbn.c b/sshbn.c
index 8d4d703..7fe0309 100644 (file)
--- a/sshbn.c
+++ b/sshbn.c
@@ -133,7 +133,7 @@ static void internal_add_shifted(BignumInt *number,
     int bshift = shift % BIGNUM_INT_BITS;
     BignumDblInt addend;
 
-    addend = n << bshift;
+    addend = (BignumDblInt)n << bshift;
 
     while (addend) {
        addend += number[word];