From 37af963717967a7b490fc5c2079115c22707e314 Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Sat, 6 Apr 2019 10:09:55 +0300 Subject: [PATCH] Fixed work with _msgIdToEdit in FileLoadTask. - Added check is allowed media editing in paintEvent. - Fixes #5885. --- Telegram/SourceFiles/boxes/edit_caption_box.cpp | 4 +++- Telegram/SourceFiles/storage/localimageloader.cpp | 1 + Telegram/SourceFiles/storage/localimageloader.h | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Telegram/SourceFiles/boxes/edit_caption_box.cpp b/Telegram/SourceFiles/boxes/edit_caption_box.cpp index f85a2288a5..1cc730683c 100644 --- a/Telegram/SourceFiles/boxes/edit_caption_box.cpp +++ b/Telegram/SourceFiles/boxes/edit_caption_box.cpp @@ -726,7 +726,9 @@ void EditCaptionBox::paintEvent(QPaintEvent *e) { nameright = 0; statustop = st::msgFileStatusTop - st::msgFilePadding.top(); } - const auto editButton = _editMedia->width() + st::editMediaButtonSkip; + const auto editButton = _isAllowedEditMedia + ? _editMedia->width() + st::editMediaButtonSkip + : 0; const auto namewidth = w - nameleft - editButton; const auto x = (width() - w) / 2, y = st::boxPhotoPadding.top(); diff --git a/Telegram/SourceFiles/storage/localimageloader.cpp b/Telegram/SourceFiles/storage/localimageloader.cpp index 718248dc37..d0155fa963 100644 --- a/Telegram/SourceFiles/storage/localimageloader.cpp +++ b/Telegram/SourceFiles/storage/localimageloader.cpp @@ -539,6 +539,7 @@ FileLoadTask::FileLoadTask( , _type(type) , _caption(caption) , _msgIdToEdit(msgIdToEdit) { + Expects(_msgIdToEdit == 0 || IsServerMsgId(_msgIdToEdit)); } FileLoadTask::FileLoadTask( diff --git a/Telegram/SourceFiles/storage/localimageloader.h b/Telegram/SourceFiles/storage/localimageloader.h index ca6aa6d8e6..2506772145 100644 --- a/Telegram/SourceFiles/storage/localimageloader.h +++ b/Telegram/SourceFiles/storage/localimageloader.h @@ -323,7 +323,7 @@ private: VoiceWaveform _waveform; SendMediaType _type; TextWithTags _caption; - MsgId _msgIdToEdit; + MsgId _msgIdToEdit = 0; std::shared_ptr _result;