From 5a741ce08d225847f45ca30dc372ed0bfa4c0c04 Mon Sep 17 00:00:00 2001 From: Arseny Smirnov Date: Fri, 28 Dec 2018 16:16:14 +0300 Subject: [PATCH] PartsManager bugfix: do not set bits in bitmask for empty parts GitOrigin-RevId: 5fec69b1e1aed975edb7d9901206262abc7151d3 --- td/telegram/files/PartsManager.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/td/telegram/files/PartsManager.cpp b/td/telegram/files/PartsManager.cpp index aaed84ea..c41b3203 100644 --- a/td/telegram/files/PartsManager.cpp +++ b/td/telegram/files/PartsManager.cpp @@ -234,7 +234,9 @@ Status PartsManager::on_part_ok(int32 id, size_t part_size, size_t actual_size) pending_count_--; part_status_[id] = PartStatus::Ready; - bitmask_.set(id); + if (actual_size != 0) { + bitmask_.set(id); + } ready_size_ += narrow_cast(actual_size); VLOG(files) << "Transferred part " << id << " of size " << part_size << ", total ready size = " << ready_size_;