diff options
Diffstat (limited to 'libtommath/bn_mp_div_d.c')
-rw-r--r-- | libtommath/bn_mp_div_d.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libtommath/bn_mp_div_d.c b/libtommath/bn_mp_div_d.c index 4f210e6..b12fb5c 100644 --- a/libtommath/bn_mp_div_d.c +++ b/libtommath/bn_mp_div_d.c @@ -19,6 +19,10 @@ 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 & (b-1) != 0 ) { + return 0; + } for (x = 1; x < DIGIT_BIT; x++) { if (b == (((mp_digit)1)<<x)) { *p = x; @@ -106,5 +110,5 @@ int mp_div_d (mp_int * a, mp_digit b, mp_int * c, mp_digit * d) #endif /* $Source: /root/tcl/repos-to-convert/tcl/libtommath/bn_mp_div_d.c,v $ */ -/* $Revision: 1.1.1.3 $ */ -/* $Date: 2006/12/01 00:08:11 $ */ +/* $Revision: 1.2 $ */ +/* $Date: 2006/12/01 00:31:32 $ */ |