_PyLong_AsByteArray: added assert that the input is normalized. This is

outside the function's control, but is crucial to correct operation.
This commit is contained in:
Tim Peters 2001-06-13 20:50:08 +00:00
parent 9cb0c38fff
commit 898cf85c25
1 changed files with 5 additions and 1 deletions

View File

@ -358,7 +358,11 @@ _PyLong_AsByteArray(PyLongObject* v,
pincr = -1;
}
/* Copy over all the Python digits. */
/* Copy over all the Python digits.
It's crucial that every Python digit except for the MSD contribute
exactly SHIFT bits to the total, so first assert that the long is
normalized. */
assert(ndigits == 0 || v->ob_digit[ndigits - 1] != 0);
j = 0;
accum = 0;
accumbits = 0;