| ... | ... | @@ -1271,6 +1271,12 @@ void bigint_and(BigInt *dest, const BigInt *op1, const BigInt *op2) { |
| 1271 | 1271 | } |
| 1272 | 1272 | |
| 1273 | 1273 | void bigint_xor(BigInt *dest, const BigInt *op1, const BigInt *op2) { |
| 1274 | if (op1->digit_count == 0) { |
| 1275 | return bigint_init_bigint(dest, op2); |
| 1276 | } |
| 1277 | if (op2->digit_count == 0) { |
| 1278 | return bigint_init_bigint(dest, op1); |
| 1279 | } |
| 1274 | 1280 | if (op1->is_negative || op2->is_negative) { |
| 1275 | 1281 | // TODO this code path is untested |
| 1276 | 1282 | size_t big_bit_count = max(bigint_bits_needed(op1), bigint_bits_needed(op2)); |