Add MessageDice::is_valid().
GitOrigin-RevId: 924ffa6d43cda4b32994f22b2300cf0f79ab7458
This commit is contained in:
parent
4a5320e2e5
commit
d27bf642eb
@ -658,6 +658,16 @@ class MessageDice : public MessageContent {
|
|||||||
MessageContentType get_type() const override {
|
MessageContentType get_type() const override {
|
||||||
return MessageContentType::Dice;
|
return MessageContentType::Dice;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool is_valid() const {
|
||||||
|
if (dice_value < 0) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (emoji == "DEFAULT_EMOJI" || emoji == "🎯") {
|
||||||
|
return dice_value <= 6;
|
||||||
|
}
|
||||||
|
return dice_value <= 1000;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
constexpr const char *MessageDice::DEFAULT_EMOJI;
|
constexpr const char *MessageDice::DEFAULT_EMOJI;
|
||||||
@ -1275,7 +1285,7 @@ static void parse(unique_ptr<MessageContent> &content, ParserT &parser) {
|
|||||||
m->emoji = MessageDice::DEFAULT_EMOJI;
|
m->emoji = MessageDice::DEFAULT_EMOJI;
|
||||||
}
|
}
|
||||||
parse(m->dice_value, parser);
|
parse(m->dice_value, parser);
|
||||||
is_bad = m->dice_value < 0 || m->dice_value > 6;
|
is_bad = !m->is_valid();
|
||||||
content = std::move(m);
|
content = std::move(m);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -3744,7 +3754,7 @@ unique_ptr<MessageContent> get_message_content(Td *td, FormattedText message,
|
|||||||
auto message_dice = move_tl_object_as<telegram_api::messageMediaDice>(media);
|
auto message_dice = move_tl_object_as<telegram_api::messageMediaDice>(media);
|
||||||
|
|
||||||
auto m = td::make_unique<MessageDice>(message_dice->emoticon_, message_dice->value_);
|
auto m = td::make_unique<MessageDice>(message_dice->emoticon_, message_dice->value_);
|
||||||
if (m->dice_value < 0 || m->dice_value > 6) {
|
if (!m->is_valid()) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user