mirror of
https://github.com/wiz0u/WTelegramClient.git
synced 2025-12-06 06:52:01 +01:00
Fix HtmlText exception with empty texts
This commit is contained in:
parent
b9299810b8
commit
88c05287be
2
.github/dev.yml
vendored
2
.github/dev.yml
vendored
|
|
@ -1,7 +1,7 @@
|
||||||
pr: none
|
pr: none
|
||||||
trigger: [ master ]
|
trigger: [ master ]
|
||||||
|
|
||||||
name: 4.1.2-dev.$(Rev:r)
|
name: 4.1.3-dev.$(Rev:r)
|
||||||
|
|
||||||
pool:
|
pool:
|
||||||
vmImage: ubuntu-latest
|
vmImage: ubuntu-latest
|
||||||
|
|
|
||||||
3
.github/release.yml
vendored
3
.github/release.yml
vendored
|
|
@ -62,7 +62,6 @@ stages:
|
||||||
{
|
{
|
||||||
"status": "success",
|
"status": "success",
|
||||||
"complete": true,
|
"complete": true,
|
||||||
"message": "{ \"commitId\": \"$(Build.SourceVersion)\", \"buildNumber\": \"$(Build.BuildNumber)\", \"teamProjectName\": \"$(System.TeamProject)\"
|
"message": "{ \"commitId\": \"$(Build.SourceVersion)\", \"buildNumber\": \"$(Build.BuildNumber)\", \"teamProjectName\": \"$(System.TeamProject)\"}"
|
||||||
}"
|
|
||||||
}
|
}
|
||||||
waitForCompletion: 'false'
|
waitForCompletion: 'false'
|
||||||
|
|
|
||||||
|
|
@ -403,7 +403,7 @@ namespace TL
|
||||||
prevEntity.length = offset - prevEntity.offset;
|
prevEntity.length = offset - prevEntity.offset;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (tag.StartsWith("a href=\"") && tag.EndsWith("\""))
|
else if (tag.StartsWith("a href=\"") && tag[^1] == '"')
|
||||||
{
|
{
|
||||||
tag = tag[8..^1];
|
tag = tag[8..^1];
|
||||||
if (tag.StartsWith("tg://user?id=") && long.TryParse(tag[13..], out var user_id) && users?.GetValueOrDefault(user_id)?.access_hash is long hash)
|
if (tag.StartsWith("tg://user?id=") && long.TryParse(tag[13..], out var user_id) && users?.GetValueOrDefault(user_id)?.access_hash is long hash)
|
||||||
|
|
@ -411,7 +411,7 @@ namespace TL
|
||||||
else
|
else
|
||||||
entities.Add(new MessageEntityTextUrl { offset = offset, length = -1, url = tag });
|
entities.Add(new MessageEntityTextUrl { offset = offset, length = -1, url = tag });
|
||||||
}
|
}
|
||||||
else if (tag.StartsWith("code class=\"language-") && tag.EndsWith("\""))
|
else if (tag.StartsWith("code class=\"language-") && tag[^1] == '"')
|
||||||
{
|
{
|
||||||
if (entities.LastOrDefault(e => e.length == -1) is MessageEntityPre prevEntity)
|
if (entities.LastOrDefault(e => e.length == -1) is MessageEntityPre prevEntity)
|
||||||
prevEntity.language = tag[21..^1];
|
prevEntity.language = tag[21..^1];
|
||||||
|
|
@ -439,13 +439,13 @@ namespace TL
|
||||||
|
|
||||||
internal static void FixUps(StringBuilder sb, List<MessageEntity> entities)
|
internal static void FixUps(StringBuilder sb, List<MessageEntity> entities)
|
||||||
{
|
{
|
||||||
int truncate = 0;
|
int newlen = sb.Length;
|
||||||
while (char.IsWhiteSpace(sb[^++truncate]));
|
while (--newlen >= 0 && char.IsWhiteSpace(sb[newlen]));
|
||||||
if (truncate == 1) return;
|
if (++newlen == sb.Length) return;
|
||||||
var len = sb.Length -= --truncate;
|
sb.Length = newlen;
|
||||||
foreach (var entity in entities)
|
foreach (var entity in entities)
|
||||||
if (entity.offset + entity.length > len)
|
if (entity.offset + entity.length > newlen)
|
||||||
entity.length = len - entity.offset;
|
entity.length = newlen - entity.offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Converts the (plain text + entities) format used by Telegram messages into an <a href="https://core.telegram.org/bots/api/#html-style">HTML-formatted text</a></summary>
|
/// <summary>Converts the (plain text + entities) format used by Telegram messages into an <a href="https://core.telegram.org/bots/api/#html-style">HTML-formatted text</a></summary>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue