diff options
Diffstat (limited to 'td/telegram/files/FileDownloader.cpp')
| -rw-r--r-- | td/telegram/files/FileDownloader.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/td/telegram/files/FileDownloader.cpp b/td/telegram/files/FileDownloader.cpp index 4545ea27a..7f2f1c95e 100644 --- a/td/telegram/files/FileDownloader.cpp +++ b/td/telegram/files/FileDownloader.cpp @@ -351,7 +351,7 @@ Result<size_t> FileDownloader::process_part(Part part, NetQueryPtr net_query) { string iv = cdn_encryption_iv_; as<uint32>(&iv[12]) = offset; ctr_state.init(cdn_encryption_key_, iv); - ctr_state.decrypt(bytes.as_slice(), bytes.as_slice()); + ctr_state.decrypt(bytes.as_slice(), bytes.as_mutable_slice()); } if (encryption_key_.is_secret()) { LOG_CHECK(next_part_ == part.id) << tag("expected part.id", next_part_) << "!=" << tag("part.id", part.id); @@ -360,8 +360,8 @@ Result<size_t> FileDownloader::process_part(Part part, NetQueryPtr net_query) { if (part.size % 16 != 0) { next_part_stop_ = true; } - aes_ige_decrypt(as_slice(encryption_key_.key()), as_slice(encryption_key_.mutable_iv()), bytes.as_slice(), - bytes.as_slice()); + aes_ige_decrypt(as_slice(encryption_key_.key()), as_mutable_slice(encryption_key_.mutable_iv()), bytes.as_slice(), + bytes.as_mutable_slice()); } auto slice = bytes.as_slice().substr(0, part.size); @@ -445,7 +445,7 @@ Result<FileLoader::CheckInfo> FileDownloader::check_loop(int64 checked_prefix_si auto size = narrow_cast<size_t>(end_offset - begin_offset); auto slice = BufferSlice(size); TRY_STATUS(acquire_fd()); - TRY_RESULT(read_size, fd_.pread(slice.as_slice(), begin_offset)); + TRY_RESULT(read_size, fd_.pread(slice.as_mutable_slice(), begin_offset)); if (size != read_size) { return Status::Error("Failed to read file to check hash"); } |
