diff options
author | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2015-11-22 22:03:18 +0200 |
---|---|---|
committer | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2015-11-22 22:03:18 +0200 |
commit | b3be4710aaa53429c78d03a86e9be909dca923c0 (patch) | |
tree | a692aa4b9128190a79a49b4ad73edf3d7daf9f4f /py | |
parent | b56c635d64612975a2784fdc1424c41ec02f7272 (diff) | |
download | micropython-b3be4710aaa53429c78d03a86e9be909dca923c0.tar.gz micropython-b3be4710aaa53429c78d03a86e9be909dca923c0.zip |
py/mpz: Normalize (remove leading zeros) xor operation result.
Diffstat (limited to 'py')
-rw-r--r-- | py/mpz.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -285,7 +285,11 @@ STATIC mp_uint_t mpn_xor(mpz_dig_t *idig, const mpz_dig_t *jdig, mp_uint_t jlen, *idig = *jdig; } - return idig - oidig; + // remove trailing zeros + for (--idig; idig >= oidig && *idig == 0; --idig) { + } + + return idig + 1 - oidig; } /* computes i = i * d1 + d2 |