Replaced exported data of callbacks from markup replies with base64.

This commit is contained in:
23rd 2024-03-31 16:46:05 +03:00 committed by John Preston
parent 8718d94e7d
commit 4db885d8b4

View file

@ -804,7 +804,22 @@ QByteArray SerializeMessage(
});
}
if (!entry.data.isEmpty()) {
pairs.push_back({ "data", SerializeString(entry.data) });
using Type = HistoryMessageMarkupButton::Type;
const auto isCallback = (entry.type == Type::Callback)
|| (entry.type == Type::CallbackWithPassword);
const auto data = isCallback
? entry.data.toBase64(QByteArray::Base64UrlEncoding
| QByteArray::OmitTrailingEquals)
: entry.data;
if (isCallback) {
pairs.push_back({
"dataBase64",
SerializeString(data),
});
pairs.push_back({ "data", SerializeString({}) });
} else {
pairs.push_back({ "data", SerializeString(data) });
}
}
if (!entry.forwardText.isEmpty()) {
pairs.push_back({