diff --git a/Telegram/SourceFiles/history/view/media/history_view_document.cpp b/Telegram/SourceFiles/history/view/media/history_view_document.cpp index 1d487fe25..07e82409e 100644 --- a/Telegram/SourceFiles/history/view/media/history_view_document.cpp +++ b/Telegram/SourceFiles/history/view/media/history_view_document.cpp @@ -326,13 +326,13 @@ Document::Document( return (type == AudioMsgId::Type::Voice); }) | rpl::to_empty ) | rpl::start_with_next([=]() mutable { + _drawTtl = nullptr; const auto item = _parent->data(); - // Destroys this. - ClearMediaAsExpired(_parent->data()); if (lifetime) { - _drawTtl = nullptr; base::take(lifetime)->destroy(); } + // Destroys this. + ClearMediaAsExpired(item); }, *lifetime); _drawTtl = CreateTtlPaintCallback(lifetime, [=] { repaint(); }); @@ -437,7 +437,7 @@ QSize Document::countOptimalSize() { const auto voice = Get(); if (voice) { const auto session = &_realParent->history()->session(); - if (IsVoiceOncePlayable(_parent->data()) + if (_parent->data()->media()->ttlSeconds() || (!session->premium() && !session->api().transcribes().trialsSupport())) { voice->transcribe = nullptr;