Fix can_get_message_viewers for anonymous polls.
This commit is contained in:
parent
655896ad4a
commit
bb0f7e012d
@ -2849,6 +2849,15 @@ int32 get_message_content_live_location_period(const MessageContent *content) {
|
||||
}
|
||||
}
|
||||
|
||||
bool get_message_content_poll_is_anonymous(const Td *td, const MessageContent *content) {
|
||||
switch (content->get_type()) {
|
||||
case MessageContentType::Poll:
|
||||
return td->poll_manager_->get_poll_is_anonymous(static_cast<const MessagePoll *>(content)->poll_id);
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
bool get_message_content_poll_is_closed(const Td *td, const MessageContent *content) {
|
||||
switch (content->get_type()) {
|
||||
case MessageContentType::Poll:
|
||||
|
@ -147,6 +147,8 @@ UserId get_message_content_deleted_user_id(const MessageContent *content);
|
||||
|
||||
int32 get_message_content_live_location_period(const MessageContent *content);
|
||||
|
||||
bool get_message_content_poll_is_anonymous(const Td *td, const MessageContent *content);
|
||||
|
||||
bool get_message_content_poll_is_closed(const Td *td, const MessageContent *content);
|
||||
|
||||
bool has_message_content_web_page(const MessageContent *content);
|
||||
|
@ -17280,6 +17280,7 @@ Status MessagesManager::can_get_message_viewers(DialogId dialog_id, const Messag
|
||||
if (td_->auth_manager_->is_bot()) {
|
||||
return Status::Error(400, "User is bot");
|
||||
}
|
||||
CHECK(m != nullptr);
|
||||
if (!m->is_outgoing) {
|
||||
return Status::Error(400, "Can't get viewers of incoming messages");
|
||||
}
|
||||
@ -17331,6 +17332,10 @@ Status MessagesManager::can_get_message_viewers(DialogId dialog_id, const Messag
|
||||
}
|
||||
CHECK(m->message_id.is_server());
|
||||
|
||||
if (m->content->get_type() == MessageContentType::Poll &&
|
||||
get_message_content_poll_is_anonymous(td_, m->content.get())) {
|
||||
}
|
||||
|
||||
return Status::OK();
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user