diff --git a/telethon/tl/custom/forward.py b/telethon/tl/custom/forward.py index ecccba98..7943effa 100644 --- a/telethon/tl/custom/forward.py +++ b/telethon/tl/custom/forward.py @@ -24,7 +24,10 @@ class Forward(ChatGetter, SenderGetter): in the original :tl:`MessageFwdHeader`. """ def __init__(self, client, original, entities): - self.__dict__ = original.__dict__ + # Copy all the fields, not reference! It would cause memory cycles: + # self.original_fwd.original_fwd.original_fwd.original_fwd + # ...would be valid if we referenced. + self.__dict__ = dict(original.__dict__) self._client = client self.original_fwd = original