diff --git a/Telegram/SourceFiles/core/local_url_handlers.cpp b/Telegram/SourceFiles/core/local_url_handlers.cpp index 99ab7c8f4c..6a1d8c1b14 100644 --- a/Telegram/SourceFiles/core/local_url_handlers.cpp +++ b/Telegram/SourceFiles/core/local_url_handlers.cpp @@ -871,8 +871,8 @@ QString TryConvertUrlToLocal(QString url) { return qsl("tg://socks?") + socksMatch->captured(1); } else if (auto proxyMatch = regex_match(qsl("^proxy/?\\?(.+)(#|$)"), query, matchOptions)) { return qsl("tg://proxy?") + proxyMatch->captured(1); - } else if (auto invoiceMatch = regex_match(qsl("^invoice/([a-zA-Z0-9]+)(\\?|#|$)"), query, matchOptions)) { - return qsl("tg://invoice?slug=") + invoiceMatch->captured(1); + } else if (auto invoiceMatch = regex_match(qsl("^(invoice/|\\$)([a-zA-Z0-9]+)(\\?|#|$)"), query, matchOptions)) { + return qsl("tg://invoice?slug=") + invoiceMatch->captured(2); } else if (auto bgMatch = regex_match(qsl("^bg/([a-zA-Z0-9\\.\\_\\-\\~]+)(\\?(.+)?)?$"), query, matchOptions)) { const auto params = bgMatch->captured(3); const auto bg = bgMatch->captured(1);