From 96607ce874405128390e9f268bc5d98fe34a1fbc Mon Sep 17 00:00:00 2001 From: Vladimir Golovnev Date: Fri, 12 Jul 2024 08:49:45 +0300 Subject: [PATCH] Prevent incorrect size from being used for creating array PR #21050. --- src/base/bittorrent/torrentimpl.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/base/bittorrent/torrentimpl.cpp b/src/base/bittorrent/torrentimpl.cpp index 95fcccf94a4..b29f8f06e75 100644 --- a/src/base/bittorrent/torrentimpl.cpp +++ b/src/base/bittorrent/torrentimpl.cpp @@ -1466,11 +1466,13 @@ QBitArray TorrentImpl::pieces() const QBitArray TorrentImpl::downloadingPieces() const { - QBitArray result(piecesCount()); + if (!hasMetadata()) + return {}; std::vector queue; m_nativeHandle.get_download_queue(queue); + QBitArray result {piecesCount()}; for (const lt::partial_piece_info &info : queue) result.setBit(LT::toUnderlyingType(info.piece_index));