Skip to content
This repository was archived by the owner on Dec 23, 2024. It is now read-only.

Commit ed008dd

Browse files
committed
Fix message entity parsing and serialization
1 parent f6e0e58 commit ed008dd

File tree

6 files changed

+6
-6
lines changed

6 files changed

+6
-6
lines changed

pyrogram/methods/messages/send_message.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ async def send_message(
159159
entities=[
160160
types.MessageEntity._parse(None, entity, {})
161161
for entity in entities
162-
],
162+
] if entities else None,
163163
client=self
164164
)
165165

pyrogram/methods/messages/send_poll.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ async def send_poll(
155155
),
156156
correct_answers=[bytes([correct_option_id])] if correct_option_id is not None else None,
157157
solution=solution,
158-
solution_entities=solution_entities
158+
solution_entities=solution_entities or []
159159
),
160160
message="",
161161
silent=disable_notification,

pyrogram/parser/html.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ async def parse(self, text: str):
149149

150150
return {
151151
"message": utils.remove_surrogates(parser.text),
152-
"entities": sorted(entities, key=lambda e: e.offset)
152+
"entities": sorted(entities, key=lambda e: e.offset) or None
153153
}
154154

155155
@staticmethod

pyrogram/parser/parser.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ async def parse(self, text: str, mode: Optional[enums.ParseMode] = None):
4949
return await self.html.parse(text)
5050

5151
if mode == enums.ParseMode.DISABLED:
52-
return {"message": text, "entities": []}
52+
return {"message": text, "entities": None}
5353

5454
raise ValueError(f'Invalid parse mode "{mode}"')
5555

pyrogram/types/authorization/terms_of_service.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,5 +52,5 @@ def _parse(terms_of_service: "raw.types.help.TermsOfService") -> "TermsOfService
5252
entities=[
5353
types.MessageEntity._parse(None, entity, {})
5454
for entity in terms_of_service.entities
55-
]
55+
] if terms_of_service.entities else None
5656
)

pyrogram/utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -349,7 +349,7 @@ async def parse_text_entities(
349349
for entity in entities:
350350
entity._client = client
351351

352-
text, entities = text, [await entity.write() for entity in entities]
352+
text, entities = text, [await entity.write() for entity in entities] or None
353353
else:
354354
text, entities = (await client.parser.parse(text, parse_mode)).values()
355355

0 commit comments

Comments
 (0)