diff options
Diffstat (limited to 'libtommath/bn_mp_div_d.c')
| -rw-r--r-- | libtommath/bn_mp_div_d.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/libtommath/bn_mp_div_d.c b/libtommath/bn_mp_div_d.c index 9b58aa6..af18d0a 100644 --- a/libtommath/bn_mp_div_d.c +++ b/libtommath/bn_mp_div_d.c @@ -12,13 +12,17 @@ * The library is free for all purposes without any express * guarantee it works. * - * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org + * Tom St Denis, tomstdenis@gmail.com, http://math.libtomcrypt.com */ static int s_is_power_of_two(mp_digit b, int *p) { int x; + /* quick out - if (b & (b-1)) isn't zero, b isn't a power of two */ + if ((b==0) || (b & (b-1))) { + return 0; + } for (x = 1; x < DIGIT_BIT; x++) { if (b == (((mp_digit)1)<<x)) { *p = x; |
