Merge pull request #12108 from Chocobo1/bits

Avoid unnecessary memory writes
This commit is contained in:
Mike Tzou 2020-03-04 23:50:12 +08:00 committed by GitHub
commit ca01b049a6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 9 deletions

View File

@ -208,11 +208,10 @@ qlonglong PeerInfo::totalDownload() const
QBitArray PeerInfo::pieces() const QBitArray PeerInfo::pieces() const
{ {
QBitArray result(m_nativeInfo.pieces.size()); QBitArray result(m_nativeInfo.pieces.size());
for (int i = 0; i < result.size(); ++i) {
int i = 0; if (m_nativeInfo.pieces[i])
for (const bool bit : m_nativeInfo.pieces) result.setBit(i, true);
result.setBit(i++, bit); }
return result; return result;
} }

View File

@ -1202,10 +1202,10 @@ QVector<PeerInfo> TorrentHandle::peers() const
QBitArray TorrentHandle::pieces() const QBitArray TorrentHandle::pieces() const
{ {
QBitArray result(m_nativeStatus.pieces.size()); QBitArray result(m_nativeStatus.pieces.size());
for (int i = 0; i < result.size(); ++i) {
for (int i = 0; i < m_nativeStatus.pieces.size(); ++i) if (m_nativeStatus.pieces[LTPieceIndex {i}])
result.setBit(i, m_nativeStatus.pieces.get_bit(LTPieceIndex {i})); result.setBit(i, true);
}
return result; return result;
} }