mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2026-07-25 06:54:43 +00:00
Fix GCC 15 -Wdangling-pointer
This commit is contained in:
@@ -2285,11 +2285,13 @@ void Controller::saveUsernamesOrder() {
|
||||
_api.request(MTPchannels_DeactivateAllUsernames(
|
||||
channel->inputChannel()
|
||||
)).done([=] {
|
||||
channel->setUsernames(channel->editableUsername().isEmpty()
|
||||
? Data::Usernames()
|
||||
: Data::Usernames{
|
||||
if (channel->editableUsername().isEmpty()) {
|
||||
channel->setUsernames({});
|
||||
} else {
|
||||
channel->setUsernames({
|
||||
{ channel->editableUsername(), true, true }
|
||||
});
|
||||
}
|
||||
continueSave();
|
||||
}).send();
|
||||
} else {
|
||||
|
||||
@@ -748,12 +748,14 @@ not_null<UserData*> Session::processUser(const MTPUser &data) {
|
||||
status = data.vstatus();
|
||||
if (!minimal) {
|
||||
const auto newUsername = uname;
|
||||
const auto newUsernames = data.vusernames()
|
||||
? Api::Usernames::FromTL(*data.vusernames())
|
||||
: !newUsername.isEmpty()
|
||||
? Data::Usernames{{ newUsername, true, true }}
|
||||
: Data::Usernames();
|
||||
result->setUsernames(newUsernames);
|
||||
if (data.vusernames()) {
|
||||
result->setUsernames(
|
||||
Api::Usernames::FromTL(*data.vusernames()));
|
||||
} else if (!newUsername.isEmpty()) {
|
||||
result->setUsernames({{ newUsername, true, true }});
|
||||
} else {
|
||||
result->setUsernames({});
|
||||
}
|
||||
}
|
||||
}
|
||||
if (const auto &status = data.vemoji_status()) {
|
||||
@@ -957,15 +959,17 @@ not_null<PeerData*> Session::processChat(const MTPChat &data) {
|
||||
|
||||
{
|
||||
const auto newUsername = qs(data.vusername().value_or_empty());
|
||||
const auto newUsernames = data.vusernames()
|
||||
? Api::Usernames::FromTL(*data.vusernames())
|
||||
: !newUsername.isEmpty()
|
||||
? Data::Usernames{ Data::Username{ newUsername, true, true } }
|
||||
: Data::Usernames();
|
||||
channel->setName(
|
||||
qs(data.vtitle()),
|
||||
TextUtilities::SingleLine(newUsername));
|
||||
channel->setUsernames(newUsernames);
|
||||
if (data.vusernames()) {
|
||||
channel->setUsernames(
|
||||
Api::Usernames::FromTL(*data.vusernames()));
|
||||
} else if (!newUsername.isEmpty()) {
|
||||
channel->setUsernames({ { newUsername, true, true } });
|
||||
} else {
|
||||
channel->setUsernames({});
|
||||
}
|
||||
}
|
||||
const auto hasUsername = !channel->username().isEmpty();
|
||||
|
||||
|
||||
@@ -460,9 +460,13 @@ QByteArray Parser::block(const MTPDpageBlockList &data) {
|
||||
|
||||
QByteArray Parser::block(const MTPDpageBlockBlockquote &data) {
|
||||
const auto caption = rich(data.vcaption());
|
||||
const auto cite = caption.isEmpty()
|
||||
? QByteArray()
|
||||
: tag("cite", { { "dir", "auto" } }, caption);
|
||||
const auto cite = [&] {
|
||||
if (caption.isEmpty()) {
|
||||
return QByteArray();
|
||||
} else {
|
||||
return tag("cite", { { "dir", "auto" } }, caption);
|
||||
}
|
||||
}();
|
||||
return tag("blockquote", {
|
||||
{ "dir", "auto" }
|
||||
}, rich(data.vtext()) + cite);
|
||||
@@ -470,9 +474,13 @@ QByteArray Parser::block(const MTPDpageBlockBlockquote &data) {
|
||||
|
||||
QByteArray Parser::block(const MTPDpageBlockPullquote &data) {
|
||||
const auto caption = rich(data.vcaption());
|
||||
const auto cite = caption.isEmpty()
|
||||
? QByteArray()
|
||||
: tag("cite", { { "dir", "auto" } }, caption);
|
||||
const auto cite = [&] {
|
||||
if (caption.isEmpty()) {
|
||||
return QByteArray();
|
||||
} else {
|
||||
return tag("cite", { { "dir", "auto" } }, caption);
|
||||
}
|
||||
}();
|
||||
return tag("div", {
|
||||
{ "class", "pullquote" },
|
||||
{ "dir", "auto" },
|
||||
@@ -1084,12 +1092,14 @@ QByteArray Parser::rich(const MTPRichText &text) {
|
||||
}, [&](const MTPDtextAnchor &data) {
|
||||
const auto inner = rich(data.vtext());
|
||||
const auto name = utf(data.vname());
|
||||
return inner.isEmpty()
|
||||
? tag("a", { { "name", name } })
|
||||
: tag(
|
||||
if (inner.isEmpty()) {
|
||||
return tag("a", { { "name", name } });
|
||||
} else {
|
||||
return tag(
|
||||
"span",
|
||||
{ { "class", "reference" } },
|
||||
tag("a", { { "name", name } }) + inner);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user