summaryrefslogtreecommitdiff
path: root/net-im/telegram-desktop/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-02-29 18:01:47 +0000
committerV3n3RiX <venerix@redcorelinux.org>2020-02-29 18:01:47 +0000
commitceeeb463cc1eef97fd62eaee8bf2196ba04bc384 (patch)
tree9f47ee47c31a0f13f9496879cd88a1042550aa81 /net-im/telegram-desktop/files
parent53cba99042fa967e2a93da9f8db806fe2d035543 (diff)
gentoo (leap year) resync : 29.02.2020
Diffstat (limited to 'net-im/telegram-desktop/files')
-rw-r--r--net-im/telegram-desktop/files/1.9.19-crash.patch47
1 files changed, 47 insertions, 0 deletions
diff --git a/net-im/telegram-desktop/files/1.9.19-crash.patch b/net-im/telegram-desktop/files/1.9.19-crash.patch
new file mode 100644
index 000000000000..ff88aec74eb6
--- /dev/null
+++ b/net-im/telegram-desktop/files/1.9.19-crash.patch
@@ -0,0 +1,47 @@
+From 844e9b60ddf01712082e7ff87cfe74bb20d97297 Mon Sep 17 00:00:00 2001
+From: John Preston <johnprestonmail@gmail.com>
+Date: Tue, 25 Feb 2020 16:12:04 +0400
+Subject: [PATCH] Fix crash in SearchController.
+
+Data::Histories cancels request in Main::Session::api(), so the
+request must be sent using this global api(), not custom MTP::Sender.
+---
+ Telegram/SourceFiles/data/data_search_controller.cpp | 5 ++---
+ Telegram/SourceFiles/data/data_search_controller.h | 1 -
+ 2 files changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/Telegram/SourceFiles/data/data_search_controller.cpp b/Telegram/SourceFiles/data/data_search_controller.cpp
+index 08541b13da..90fbd36762 100644
+--- a/Telegram/SourceFiles/data/data_search_controller.cpp
++++ b/Telegram/SourceFiles/data/data_search_controller.cpp
+@@ -194,8 +194,7 @@ SearchController::CacheEntry::CacheEntry(const Query &query)
+ }
+
+ SearchController::SearchController(not_null<Main::Session*> session)
+-: _session(session)
+-, _api(session->api().instance()) {
++: _session(session) {
+ }
+
+ bool SearchController::hasInCache(const Query &query) const {
+@@ -372,7 +371,7 @@ void SearchController::requestMore(
+ const auto type = ::Data::Histories::RequestType::History;
+ const auto history = _session->data().history(listData->peer);
+ auto requestId = histories.sendRequest(history, type, [=](Fn<void()> finish) {
+- return _api.request(
++ return _session->api().request(
+ std::move(*prepared)
+ ).done([=](const MTPmessages_Messages &result) {
+ listData->requests.remove(key);
+diff --git a/Telegram/SourceFiles/data/data_search_controller.h b/Telegram/SourceFiles/data/data_search_controller.h
+index a439bb38ed..f9341ac4d4 100644
+--- a/Telegram/SourceFiles/data/data_search_controller.h
++++ b/Telegram/SourceFiles/data/data_search_controller.h
+@@ -130,7 +130,6 @@ class SearchController final {
+ Data *listData);
+
+ const not_null<Main::Session*> _session;
+- MTP::Sender _api;
+ Cache _cache;
+ Cache::iterator _current = _cache.end();
+