diff options
Diffstat (limited to 'src/corelib/tools/qbitarray.cpp')
| -rw-r--r-- | src/corelib/tools/qbitarray.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/corelib/tools/qbitarray.cpp b/src/corelib/tools/qbitarray.cpp index 54c1ff88435..e432322aeb0 100644 --- a/src/corelib/tools/qbitarray.cpp +++ b/src/corelib/tools/qbitarray.cpp @@ -174,10 +174,10 @@ int QBitArray::count(bool on) const bits += 3; numBits += int(qPopulationCount(v)); } - while (len >= 0) { - if (bits[len / 8] & (1 << ((len - 1) & 7))) - ++numBits; + while (len > 0) { --len; + if (bits[len / 8] & (1 << (len & 7))) + ++numBits; } #endif return on ? numBits : size() - numBits; |
