diff --git a/libtransmission/completion.cc b/libtransmission/completion.cc index ea69ec06c..36de2e008 100644 --- a/libtransmission/completion.cc +++ b/libtransmission/completion.cc @@ -192,7 +192,7 @@ uint64_t tr_completion::countHasBytesInBlocks(tr_block_span_t span) const { auto const [begin, end] = span; - auto n = blocks_.count(begin, end); + uint64_t n = blocks_.count(begin, end); n *= block_info_->block_size; if (end == block_info_->n_blocks && blocks_.test(end - 1)) diff --git a/tests/libtransmission/completion-test.cc b/tests/libtransmission/completion-test.cc index 7ce51114f..a3bc29086 100644 --- a/tests/libtransmission/completion-test.cc +++ b/tests/libtransmission/completion-test.cc @@ -59,7 +59,7 @@ TEST_F(CompletionTest, MagnetLink) TEST_F(CompletionTest, setBlocks) { - auto constexpr TotalSize = uint64_t{ BlockSize * 4096 }; + auto constexpr TotalSize = uint64_t{ BlockSize * 64 * 50000 }; // 50GB auto constexpr PieceSize = uint64_t{ BlockSize * 64 }; auto torrent = TestTorrent{}; @@ -294,7 +294,7 @@ TEST_F(CompletionTest, leftUntilDone) TEST_F(CompletionTest, sizeWhenDone) { auto torrent = TestTorrent{}; - auto constexpr TotalSize = uint64_t{ BlockSize * 4096 } + 1; + auto constexpr TotalSize = uint64_t{ BlockSize * 64 * 50000 }; // 50GB auto constexpr PieceSize = uint64_t{ BlockSize * 64 }; auto const block_info = tr_block_info{ TotalSize, PieceSize };