diff --git a/pda/split.cpp b/pda/split.cpp index 05b89a228..a63b75be7 100644 --- a/pda/split.cpp +++ b/pda/split.cpp @@ -93,6 +93,7 @@ void Split::invert() { for (iterator uit = begin(); uit != end(); uit++) { int num_bits = (uit+1 == end()) ? ntaxa % UINT_BITS : UINT_BITS; + if (num_bits == 0) num_bits = UINT_BITS; // for the case when ntaxa % UINT_BITS == 0 *uit = (1 << (num_bits-1)) - 1 + (1 << (num_bits-1)) - (*uit); }