diff --git a/td/telegram/files/FileLocation.h b/td/telegram/files/FileLocation.h index 7d188e0a..89400fd2 100644 --- a/td/telegram/files/FileLocation.h +++ b/td/telegram/files/FileLocation.h @@ -393,6 +393,9 @@ class FullRemoteFileLocation { return 0; } } + void clear_file_reference() { + file_reference_ = ""; + } bool delete_file_reference(Slice bad_file_reference) { auto res = FileReferenceView(file_reference_).delete_file_reference(bad_file_reference); diff --git a/td/telegram/files/FileManager.cpp b/td/telegram/files/FileManager.cpp index 5ce8b2f4..f08a0393 100644 --- a/td/telegram/files/FileManager.cpp +++ b/td/telegram/files/FileManager.cpp @@ -2435,7 +2435,9 @@ string FileManager::get_persistent_id(const FullGenerateFileLocation &location) return base64url_encode(binary); } string FileManager::get_persistent_id(const FullRemoteFileLocation &location) { - auto binary = serialize(location); + auto location_copy = location; + location_copy.clear_file_reference(); + auto binary = serialize(location_copy); binary = zero_encode(binary); binary.push_back(PERSISTENT_ID_VERSION);