Fixed crash when user reschedules already sent message.

Fixed #8867.
This commit is contained in:
23rd 2020-10-20 23:21:51 +03:00 committed by John Preston
parent 52cca98144
commit bc7975ece7

View file

@ -420,23 +420,23 @@ bool AddSendNowMessageAction(
bool AddRescheduleMessageAction(
not_null<Ui::PopupMenu*> menu,
const ContextMenuRequest &request) {
if (!HasEditMessageAction(request)
|| !request.item->isScheduled()) {
if (!HasEditMessageAction(request) || !request.item->isScheduled()) {
return false;
}
const auto item = request.item;
const auto owner = &item->history()->owner();
const auto itemId = item->fullId();
const auto owner = &request.item->history()->owner();
const auto itemId = request.item->fullId();
menu->addAction(tr::lng_context_reschedule(tr::now), [=] {
const auto item = owner->message(itemId);
if (!item) {
return;
}
const auto callback = [=](Api::SendOptions options) {
if (!item->media() || !item->media()->webpage()) {
options.removeWebPageId = true;
if (const auto item = owner->message(itemId)) {
if (!item->media() || !item->media()->webpage()) {
options.removeWebPageId = true;
}
Api::RescheduleMessage(item, options);
}
Api::RescheduleMessage(item, options);
};
const auto peer = item->history()->peer;