Package: telegram-desktop Version: 2.6.1+ds-1 Severity: important Tags: upstream patch Control: fixed -1 2.9.0+ds-1
Telegram Desktop before 2.9.0 crashes when it sets auto-deleting timer for more than 2147483 seconds (about 24 days 21 hours) due to limitations of 32-bit the QTimer class. See https://doc.qt.io/qt-5/qtimer.html#interval-prop To reproduce the crash do the following: 1. Start a dialog via Telegram Desktop of version 2.9.0 (currently available in experimental) with an account logged in Telegram Desktop of version 2.6.1. 2. In recent app activate auto-deleting messages after 1 month. Click top-right menu in chat history -> Clear history -> Edit Auto- Delete Settings. 3. Send any message to the chat. (Either from v2.9.0 or v2.6.1, it doesn't matter). 4. Older client will crash and then will be unable to start. The patch that should fix the issue is attached.
(telegram_unstable_amd64)builder@barberry:/$ gdb -silent /usr/bin/telegram-desktop ~/.local/share/TelegramDesktop/core Reading symbols from /usr/bin/telegram-desktop... Reading symbols from /usr/lib/debug/.build-id/89/859d1f3e1c62f7cf11200db05899cbf49be6c8.debug... warning: Can't open file /memfd:xorg (deleted) during file-backed mapping note processing [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `/usr/bin/telegram-desktop'. Program terminated with signal SIGABRT, Aborted. #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 50 ../sysdeps/unix/sysv/linux/raise.c: Нет такого файла или каталога. [Current thread is 1 (Thread 0x7f0bd6810440 (LWP 1145803))] (gdb) backtrace -full -frame-arguments all #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 set = {__val = {0, 94305413637653, 75, 0, 94305470796912, 139688959463605, 94305470796896, 139688960043168, 94305470835512, 0, 0, 74, 94305470796864, 74, 94305470796832, 94305470796896}} pid = <optimized out> tid = <optimized out> #1 0x00007f0bde947537 in __GI_abort () at abort.c:79 save_stage = 1 act = {__sigaction_handler = {sa_handler = 0x7ffe09351a98, sa_sigaction = 0x7ffe09351a98}, sa_mask = {__val = {140729052895912, 140729052895888, 94305418837024, 139637976727552, 94305459499856, 8, 94305470723392, 94305470796784, 94305454601584, 94305454601312, 94305470688704, 94305470774928, 4187885076511576576, 94305445716800, 94305459519032, 9}}, sa_flags = 1, sa_restorer = 0x9fa03260} sigs = {__val = {32, 0 <repeats 15 times>}} #2 0x000055c52fac1f1c in base::assertion::fail(char const*, char const*, int) (message=message@entry=0x55c531e964b8 "\"timeout >= 0 && timeout <= std::numeric_limits<int>::max()\"", file=file@entry=0x55c531e96d61 "timer.cpp", line=line@entry=101) at ./Telegram/lib_base/base/assertion.h:34 nullptr_value = 0x0 #3 0x000055c530fe19fc in base::Timer::setTimeout(long) (this=<optimized out>, timeout=<optimized out>) at ./Telegram/lib_base/base/timer.cpp:101 #4 base::Timer::setTimeout(long) (this=<optimized out>, timeout=<optimized out>) at ./Telegram/lib_base/base/timer.cpp:100 #5 0x000055c530fe1a3f in base::Timer::start(long, Qt::TimerType, base::Timer::Repeat) (this=0x55c5336a3e38, timeout=2678076000, type=<optimized out>, repeat=<optimized out>) at ./Telegram/lib_base/base/timer.cpp:59 #6 0x000055c5303e69c3 in HistoryMessage::HistoryMessage(gsl::not_null<History*>, MTPDmessage const&, base::flags<MTPDmessage_ClientFlag>) (this=0x55c53369f350, history={ptr_ = 0x55c533273440}, data=@0x55c5341338a0: {<tl::details::type_data> = {_vptr.type_data = 0x55c5328ebf40 <vtable for MTPDmessage+16>, _counter = {<QAtomicInteger<int>> = {<QBasicAtomicInteger<int>> = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = 1}, static is_always_lock_free = true}}, <No data fields>}, <No data fields>}}, _flags = {v = {_value = 33554690}}, _id = {v = 6}, _from_id = {<MTPpeer> = {<tl::details::type_owner> = {_data = 0x55c534123350}, _type = 2645671021}, <No data fields>}, _peer_id = {<MTPpeer> = {<tl::details::type_owner> = {_data = 0x55c533725bd0}, _type = 2645671021}, <No data fields>}, _fwd_from = {<MTPmessageFwdHeader> = {<tl::details::type_owner> = {_data = 0x55c53416e3a0}, <No data fields>}, <No data fields>}, _via_bot_id = {v = 0}, _reply_to = {<MTPmessageReplyHeader> = {<tl::details::type_owner> = {_data = 0x55c53369f020}, <No data fields>}, <No data fields>}, _date = {v = 1628143694}, _message = {v = "1" = {[0] = 49 '1'}}, _media = {<MTPmessageMedia> = {<tl::details::type_owner> = {_data = 0x0}, _type = 0}, <No data fields>}, _reply_markup = {<MTPreplyMarkup> = {<tl::details::type_owner> = {_data = 0x0}, _type = 0}, <No data fields>}, _entities = {<tl::vector_type<tl::boxed<MTPmessageEntity> >> = {v = QVector<class tl::boxed<MTPmessageEntity>> (size = 0)}, <No data fields>}, _views = {v = 0}, _forwards = {v = 0}, _replies = {<MTPmessageReplies> = {<tl::details::type_owner> = {_data = 0x55c5341433b0}, <No data fields>}, <No data fields>}, _edit_date = {v = 0}, _post_author = {v = <QArrayData::shared_null+24> ""}, _grouped_id = {v = 0}, _restriction_reason = {<tl::vector_type<tl::boxed<MTPrestrictionReason> >> = {v = QVector<class tl::boxed<MTPrestrictionReason>> (size = 0)}, <No data fields>}, _ttl_period = {v = 2678400}}, clientFlags={_value = <optimized out>}) at ./Telegram/SourceFiles/history/history_message.cpp:528 config = {replyToPeer = 0, replyTo = 0, replyToTop = 0, viaBotId = 0, viewsCount = -1, author = "", senderOriginal = 0, senderNameOriginal = "", forwardPsaType = "", originalId = 0, savedFromPeer = 0, savedFromMsgId = 0, authorOriginal = "", originalDate = 0, editDate = 0, imported = false, mtpReplies = 0x0, mtpMarkup = 0x0, inlineMarkup = 0x0} textWithEntities = {text = "1", entities = QList<class EntityInText> (size = 0)} #7 0x000055c5303b540a in std::make_unique<HistoryMessage, History*, MTPDmessage const&, base::flags<MTPDmessage_ClientFlag>&>(History*&&, MTPDmessage const&, base::flags<MTPDmessage_ClientFlag>&) () at /usr/include/c++/10/bits/unique_ptr.h:962 media = {_value = <optimized out>} checked = <optimized out> #8 History::makeMessage<MTPDmessage const&, base::flags<MTPDmessage_ClientFlag>&>(MTPDmessage const&, base::flags<MTPDmessage_ClientFlag>&) (this=0x55c533273440) at ./Telegram/SourceFiles/history/history.h:102 media = {_value = <optimized out>} checked = <optimized out> #9 operator() (data=@0x55c5341338a0: {<tl::details::type_data> = {_vptr.type_data = 0x55c5328ebf40 <vtable for MTPDmessage+16>, _counter = {<QAtomicInteger<int>> = {<QBasicAtomicInteger<int>> = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = 1}, static is_always_lock_free = true}}, <No data fields>}, <No data fields>}}, _flags = {v = {_value = 33554690}}, _id = {v = 6}, _from_id = {<MTPpeer> = {<tl::details::type_owner> = {_data = 0x55c534123350}, _type = 2645671021}, <No data fields>}, _peer_id = {<MTPpeer> = {<tl::details::type_owner> = {_data = 0x55c533725bd0}, _type = 2645671021}, <No data fields>}, _fwd_from = {<MTPmessageFwdHeader> = {<tl::details::type_owner> = {_data = 0x55c53416e3a0}, <No data fields>}, <No data fields>}, _via_bot_id = {v = 0}, _reply_to = {<MTPmessageReplyHeader> = {<tl::details::type_owner> = {_data = 0x55c53369f020}, <No data fields>}, <No data fields>}, _date = {v = 1628143694}, _message = {v = "1" = {[0] = 49 '1'}}, _media = {<MTPmessageMedia> = {<tl::details::type_owner> = {_data = 0x0}, _type = 0}, <No data fields>}, _reply_markup = {<MTPreplyMarkup> = {<tl::details::type_owner> = {_data = 0x0}, _type = 0}, <No data fields>}, _entities = {<tl::vector_type<tl::boxed<MTPmessageEntity> >> = {v = QVector<class tl::boxed<MTPmessageEntity>> (size = 0)}, <No data fields>}, _views = {v = 0}, _forwards = {v = 0}, _replies = {<MTPmessageReplies> = {<tl::details::type_owner> = {_data = 0x55c5341433b0}, <No data fields>}, <No data fields>}, _edit_date = {v = 0}, _post_author = {v = <QArrayData::shared_null+24> ""}, _grouped_id = {v = 0}, _restriction_reason = {<tl::vector_type<tl::boxed<MTPrestrictionReason> >> = {v = QVector<class tl::boxed<MTPrestrictionReason>> (size = 0)}, <No data fields>}, _ttl_period = {v = 2678400}}, __closure=<optimized out>) at ./Telegram/SourceFiles/history/history_item.cpp:1087 media = {_value = <optimized out>} checked = <optimized out> #10 base::match_method<const MTPDmessage&, HistoryItem::Create(gsl::not_null<History*>, const MTPMessage&, MTPDmessage_ClientFlags)::<lambda(const MTPDmessage&)>, HistoryItem::Create(gsl::not_null<History*>, const MTPMessage&, MTPDmessage_ClientFlags)::<lambda(const MTPDmessageService&)>, HistoryItem::Create(gsl::not_null<History*>, const MTPMessage&, MTPDmessage_ClientFlags)::<lambda(const MTPDmessageEmpty&)> > (method=<optimized out>, data=@0x55c5341338a0: {<tl::details::type_data> = {_vptr.type_data = 0x55c5328ebf40 <vtable for MTPDmessage+16>, _counter = {<QAtomicInteger<int>> = {<QBasicAtomicInteger<int>> = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = 1}, static is_always_lock_free = true}}, <No data fields>}, <No data fields>}}, _flags = {v = {_value = 33554690}}, _id = {v = 6}, _from_id = {<MTPpeer> = {<tl::details::type_owner> = {_data = 0x55c534123350}, _type = 2645671021}, <No data fields>}, _peer_id = {<MTPpeer> = {<tl::details::type_owner> = {_data = 0x55c533725bd0}, _type = 2645671021}, <No data fields>}, _fwd_from = {<MTPmessageFwdHeader> = {<tl::details::type_owner> = {_data = 0x55c53416e3a0}, <No data fields>}, <No data fields>}, _via_bot_id = {v = 0}, _reply_to = {<MTPmessageReplyHeader> = {<tl::details::type_owner> = {_data = 0x55c53369f020}, <No data fields>}, <No data fields>}, _date = {v = 1628143694}, _message = {v = "1" = {[0] = 49 '1'}}, _media = {<MTPmessageMedia> = {<tl::details::type_owner> = {_data = 0x0}, _type = 0}, <No data fields>}, _reply_markup = {<MTPreplyMarkup> = {<tl::details::type_owner> = {_data = 0x0}, _type = 0}, <No data fields>}, _entities = {<tl::vector_type<tl::boxed<MTPmessageEntity> >> = {v = QVector<class tl::boxed<MTPmessageEntity>> (size = 0)}, <No data fields>}, _views = {v = 0}, _forwards = {v = 0}, _replies = {<MTPmessageReplies> = {<tl::details::type_owner> = {_data = 0x55c5341433b0}, <No data fields>}, <No data fields>}, _edit_date = {v = 0}, _post_author = {v = <QArrayData::shared_null+24> ""}, _grouped_id = {v = 0}, _restriction_reason = {<tl::vector_type<tl::boxed<MTPrestrictionReason> >> = {v = QVector<class tl::boxed<MTPrestrictionReason>> (size = 0)}, <No data fields>}, _ttl_period = {v = 2678400}}) at ./Telegram/lib_base/base/match_method.h:20 #11 MTPmessage::match<HistoryItem::Create(gsl::not_null<History*>, const MTPMessage&, MTPDmessage_ClientFlags)::<lambda(const MTPDmessage&)>, HistoryItem::Create(gsl::not_null<History*>, const MTPMessage&, MTPDmessage_ClientFlags)::<lambda(const MTPDmessageService&)>, HistoryItem::Create(gsl::not_null<History*>, const MTPMessage&, MTPDmessage_ClientFlags)::<lambda(const MTPDmessageEmpty&)> > (method=<optimized out>, this=<optimized out>) at ./obj-x86_64-linux-gnu/Telegram/gen/scheme.h:42175 #12 HistoryItem::Create(gsl::not_null<History*>, tl::boxed<MTPmessage> const&, base::flags<MTPDmessage_ClientFlag>) (history={ptr_ = 0x55c533273440}, message=@0x55c5336ad138: {<MTPmessage> = {<tl::details::type_owner> = {_data = 0x55c5341338a0}, _type = 3169027026}, <No data fields>}, clientFlags=clientFlags@entry={_value = 0}) at ./Telegram/SourceFiles/history/history_item.cpp:1102 #13 0x000055c53039a5dd in History::createItem(tl::boxed<MTPmessage> const&, base::flags<MTPDmessage_ClientFlag>, bool) (this=this@entry=0x55c533273440, message=@0x55c5336ad138: {<MTPmessage> = {<tl::details::type_owner> = {_data = 0x55c5341338a0}, _type = 3169027026}, <No data fields>}, clientFlags={_value = 0}, detachExistingItem=detachExistingItem@entry=false) at ./Telegram/SourceFiles/history/history.cpp:376 messageId = 6 #14 0x000055c5303a53f7 in History::addNewMessage(tl::boxed<MTPmessage> const&, base::flags<MTPDmessage_ClientFlag>, NewMessageType) (this=0x55c533273440, msg=@0x55c5336ad138: {<MTPmessage> = {<tl::details::type_owner> = {_data = 0x55c5341338a0}, _type = 3169027026}, <No data fields>}, clientFlags={_value = <optimized out>}, type=type@entry=NewMessageType::Last) at ./Telegram/SourceFiles/history/history.cpp:399 detachExistingItem = false item = <optimized out> unread = <optimized out> #15 0x000055c5300cd92a in Data::Session::addNewMessage(tl::boxed<MTPmessage> const&, base::flags<MTPDmessage_ClientFlag>, NewMessageType) (this=0x55c5336a3840, data=@0x55c5336ad138: {<MTPmessage> = {<tl::details::type_owner> = {_data = 0x55c5341338a0}, _type = 3169027026}, <No data fields>}, clientFlags={_value = 0}, type=NewMessageType::Last) at ./Telegram/SourceFiles/data/data_session.cpp:2232 peerId = <optimized out> result = <optimized out> #16 0x000055c5300d65c0 in Data::Session::processMessages(QVector<tl::boxed<MTPmessage> > const&, NewMessageType) (this=0x55c5336a3840, data=QVector<class tl::boxed<MTPmessage>> (size = 2) = {[0] = {<MTPmessage> = {<tl::details::type_owner> = {_data = 0x55c534155ea0}, _type = 3169027026}, <No data fields>}, [1] = {<MTPmessage> = {<tl::details::type_owner> = {_data = 0x55c5341338a0}, _type = 3169027026}, <No data fields>}}, type=NewMessageType::Last) at ./Telegram/SourceFiles/data/data_session.cpp:1906 __for_range = @0x7ffe09351e70: {<base::flat_multi_map<unsigned long long, int, std::less<void> >> = {_data = {<base::flat_multi_map<unsigned long long, int, std::less<void> >::transparent_compare> = {<std::less<void>> = {<No data fields>}, <No data fields>}, elements = std::vector of length 2, capacity 2 = {{first = 25769803777, second = 1}, {first = 30064771072, second = 0}}}}, <No data fields>} position = <synthetic pointer>: <optimized out> index = <synthetic pointer>: <optimized out> indices = {<base::flat_multi_map<unsigned long long, int, std::less<void> >> = {_data = {<base::flat_multi_map<unsigned long long, int, std::less<void> >::transparent_compare> = {<std::less<void>> = {<No data fields>}, <No data fields>}, elements = std::vector of length 2, capacity 2 = {{first = 25769803777, second = 1}, {first = 30064771072, second = 0}}}}, <No data fields>} #17 0x000055c5300e1355 in Data::Session::applyDialogs(Data::Folder*, QVector<tl::boxed<MTPmessage> > const&, QVector<tl::boxed<MTPdialog> > const&, std::optional<int>) (this=0x55c5336a3840, requestFolder=0x0, messages=<optimized out>, dialogs=QVector<class tl::boxed<MTPdialog>> (size = 2) = {[0] = {<MTPdialog> = {<tl::details::type_owner> = {_data = 0x55c53416da60}, _type = 739712882}, <No data fields>}, [1] = {<MTPdialog> = {<tl::details::type_owner> = {_data = 0x55c534168290}, _type = 739712882}, <No data fields>}}, count=std::optional<int> = {[contained value] = 2}) at ./Telegram/SourceFiles/data/data_session.cpp:1753 #18 0x000055c530a9ab13 in operator()<MTPDmessages_dialogsSlice> (data=<optimized out>, __closure=<optimized out>) at ./Telegram/SourceFiles/apiwrap.cpp:860 state = <optimized out> count = 2 #19 base::match_method<const MTPDmessages_dialogsSlice&, ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)>::<lambda(const auto:120&)> > (method=<optimized out>, data=<optimized out>) at ./Telegram/lib_base/base/match_method.h:20 state = <optimized out> count = 2 #20 base::match_method<const MTPDmessages_dialogsSlice&, ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)>::<lambda(const MTPDmessages_dialogsNotModified&)>, ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)>::<lambda(const auto:120&)> > (method=<optimized out>, data=<optimized out>) at ./Telegram/lib_base/base/match_method.h:22 state = <optimized out> count = 2 #21 MTPmessages_dialogs::match<ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)>::<lambda(const MTPDmessages_dialogsNotModified&)>, ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)>::<lambda(const auto:120&)> > (method=<optimized out>, this=<optimized out>) at ./obj-x86_64-linux-gnu/Telegram/gen/scheme.h:42391 state = <optimized out> count = 2 #22 operator() (result=<optimized out>, __closure=<optimized out>) at ./Telegram/SourceFiles/apiwrap.cpp:855 state = <optimized out> count = 2 #23 std::__invoke_impl<void, ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)>&, const tl::boxed<MTPmessages_dialogs>&> (__f=<optimized out>) at /usr/include/c++/10/bits/invoke.h:60 #24 std::__invoke_r<void, ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)>&, const tl::boxed<MTPmessages_dialogs>&> (__fn=<optimized out>) at /usr/include/c++/10/bits/invoke.h:110 #25 std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_invoke(const std::_Any_data &, const tl::boxed<MTPmessages_dialogs> &) (__functor=@0x7ffe09351f70: {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = "\000\000\000\000\000\000\000\000\300\377i3\305U\000"}, __args#0=<optimized out>) at /usr/include/c++/10/bits/std_function.h:291 #26 0x000055c530ac5082 in std::function<void (tl::boxed<MTPmessages_dialogs> const&)>::operator()(tl::boxed<MTPmessages_dialogs> const&) const (__args#0=@0x7ffe09351f60: {<MTPmessages_dialogs> = {<tl::details::type_owner> = {_data = 0x7f0b70015da0}, _type = 364538944}, <No data fields>}, this=0x7ffe09351f70) at /usr/include/c++/10/bits/std_function.h:248 handler = {_impl = {<std::_Maybe_unary_or_binary_function<void, tl::boxed<MTPmessages_dialogs> const&>> = {<std::unary_function<tl::boxed<MTPmessages_dialogs> const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = "\000\000\000\000\000\000\000\000\300\377i3\305U\000"}, _M_manager = 0x55c530a6ed00 <std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_manager(std::_Any_data &, const std::_Any_data &, std::_Manager_operation)>}, _M_invoker = 0x55c530a9a920 <std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_invoke(const std::_Any_data &, const tl::boxed<MTPmessages_dialogs> &)>}} result = {<MTPmessages_dialogs> = {<tl::details::type_owner> = {_data = 0x7f0b70015da0}, _type = 364538944}, <No data fields>} #27 base::unique_function<void (tl::boxed<MTPmessages_dialogs> const&)>::operator()(tl::boxed<MTPmessages_dialogs> const&) (args#0=@0x7ffe09351f60: {<MTPmessages_dialogs> = {<tl::details::type_owner> = {_data = 0x7f0b70015da0}, _type = 364538944}, <No data fields>}, this=0x7ffe09351f70) at ./Telegram/lib_base/base/unique_function.h:127 handler = {_impl = {<std::_Maybe_unary_or_binary_function<void, tl::boxed<MTPmessages_dialogs> const&>> = {<std::unary_function<tl::boxed<MTPmessages_dialogs> const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = "\000\000\000\000\000\000\000\000\300\377i3\305U\000"}, _M_manager = 0x55c530a6ed00 <std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_manager(std::_Any_data &, const std::_Any_data &, std::_Manager_operation)>}, _M_invoker = 0x55c530a9a920 <std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_invoke(const std::_Any_data &, const tl::boxed<MTPmessages_dialogs> &)>}} result = {<MTPmessages_dialogs> = {<tl::details::type_owner> = {_data = 0x7f0b70015da0}, _type = 364538944}, <No data fields>} #28 MTP::Sender::RequestBuilder::DonePlainPolicy<tl::boxed<MTPmessages_dialogs> >::handle(base::unique_function<void (tl::boxed<MTPmessages_dialogs> const&)>&&, int, tl::boxed<MTPmessages_dialogs>&&) (result=@0x7ffe09351f60: {<MTPmessages_dialogs> = {<tl::details::type_owner> = {_data = 0x7f0b70015da0}, _type = 364538944}, <No data fields>}, requestId=<optimized out>, handler=@0x7ffe09351f70: {_impl = {<std::_Maybe_unary_or_binary_function<void, tl::boxed<MTPmessages_dialogs> const&>> = {<std::unary_function<tl::boxed<MTPmessages_dialogs> const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = "\000\000\000\000\000\000\000\000\300\377i3\305U\000"}, _M_manager = 0x55c530a6ed00 <std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_manager(std::_Any_data &, const std::_Any_data &, std::_Manager_operation)>}, _M_invoker = 0x55c530a9a920 <std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_invoke(const std::_Any_data &, const tl::boxed<MTPmessages_dialogs> &)>}}) at ./Telegram/SourceFiles/mtproto/sender.h:36 handler = {_impl = {<std::_Maybe_unary_or_binary_function<void, tl::boxed<MTPmessages_dialogs> const&>> = {<std::unary_function<tl::boxed<MTPmessages_dialogs> const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = "\000\000\000\000\000\000\000\000\300\377i3\305U\000"}, _M_manager = 0x55c530a6ed00 <std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_manager(std::_Any_data &, const std::_Any_data &, std::_Manager_operation)>}, _M_invoker = 0x55c530a9a920 <std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_invoke(const std::_Any_data &, const tl::boxed<MTPmessages_dialogs> &)>}} result = {<MTPmessages_dialogs> = {<tl::details::type_owner> = {_data = 0x7f0b70015da0}, _type = 364538944}, <No data fields>} #29 MTP::Sender::RequestBuilder::DoneHandler<tl::boxed<MTPmessages_dialogs>, MTP::Sender::RequestBuilder::DonePlainPolicy>::operator()(int, int const*, int const*) (this=<optimized out>, requestId=<optimized out>, from=<optimized out>, end=<optimized out>) at ./Telegram/SourceFiles/mtproto/sender.h:66 handler = {_impl = {<std::_Maybe_unary_or_binary_function<void, tl::boxed<MTPmessages_dialogs> const&>> = {<std::unary_function<tl::boxed<MTPmessages_dialogs> const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = "\000\000\000\000\000\000\000\000\300\377i3\305U\000"}, _M_manager = 0x55c530a6ed00 <std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_manager(std::_Any_data &, const std::_Any_data &, std::_Manager_operation)>}, _M_invoker = 0x55c530a9a920 <std::_Function_handler<void(const tl::boxed<MTPmessages_dialogs>&), ApiWrap::requestMoreDialogs(Data::Folder*)::<lambda(const MTPmessages_Dialogs&)> >::_M_invoke(const std::_Any_data &, const tl::boxed<MTPmessages_dialogs> &)>}} result = {<MTPmessages_dialogs> = {<tl::details::type_owner> = {_data = 0x7f0b70015da0}, _type = 364538944}, <No data fields>} #30 0x000055c5306b9d1c in MTP::Instance::Private::execCallback(int, int const*, int const*) (this=0x55c5336dd240, requestId=<optimized out>, from=<optimized out>, end=0x7f0b7001bdc4) at ./Telegram/SourceFiles/mtproto/mtp_instance.cpp:1048 handleError = {__requestId = @0x7ffe09351fcc, __h = @0x7ffe09352030, __this = 0x55c5336dd240} h = {onDone = std::shared_ptr<class RPCAbstractDoneHandler> (use count 1, weak count 0) = {get() = 0x55c534112490}, onFail = std::shared_ptr<class RPCAbstractFailHandler> (use count 1, weak count 0) = {get() = 0x55c5341124e0}} #31 0x000055c5306c495d in MTP::details::Session::tryToReceive() (this=0x55c5332741c0) at ./Telegram/SourceFiles/mtproto/session.cpp:570 requestId = @0x7f0b7000c470: 11 response = QVector<int> (size = 171) = {[0] = 364538944, [1] = 481674261, [2] = 2, [3] = 739712882, [4] = 0, [5] = -1649296275, [6] = 777000, [7] = 7, [8] = 4, [9] = 0, [10] = 1, [11] = 0, [12] = -1353671392, [13] = 0, [14] = 739712882, [15] = 0, [16] = -1649296275, [17] = 752297, [18] = 6, [19] = 5, [20] = 6, [21] = 0, [22] = 0, [23] = -1353671392, [24] = 0, [25] = 481674261, [26] = 2, [27] = -1125940270, [28] = 8320, [29] = 7, [30] = -1649296275, [31] = 777000, [32] = 1628143875, [33] = 73726, [34] = 1768386380, [35] = 1868767342, [36] = 540697956, [37] = 825307441, [38] = 539898161, [39] = 1847619396, [40] = 1730180207, [41] = 543520361, [42] = 1936287860, [43] = 1685021472, [44] = 1869881445, [45] = 2037276960, [46] = 744844911, [47] = 1702257952, [48] = 1718165614, [49] = 1701344288, [50] = 1634934905, [51] = 1752440953, [52] = 1629518181, [53] = 1713399154, [54] = 544042866, [55] = 1701602644, [56] = 1835102823, [57] = 1409944097, [58] = 544434536, [59] = 1701080931, [60] = 1851876128, [61] = 543515168, [62] = 1684370293, [63] = 544175136, [64] = 543649644, [65] = 1948282473, [66] = 1870209135, [67] = 1411412597, [68] = 1734700133, [69] = 544039282, [70] = 1868784481, [71] = 779382389, [72] = 543512352, [73] = 1702258030, [74] = 1935745138, [75] = 1953046635, [76] = 1919903264, [77] = 2037276960, [78] = 1852401780, [79] = 1818566759, [80] = 170812787, [81] = 543574282, [82] = 544567161, [83] = 1852074340, [84] = 1914729511, [85] = 1702195557, [86] = 1948284019, [87] = 544434536, [88] = 1701080931, [89] = 544825888, [90] = 1769566836, [91] = 1948280686, [92] = 1869357167, [93] = 1852383335, [94] = 544108320, [95] = 1953459809, [96] = 544367976, [97] = 1769366884, [98] = 539780451, [99] = 1886218611, [100] = 1763735916, [101] = 1919905383, [102] = 1752440933, [103] = 1830843241, [104] = 1634956133, [105] = 3040615, [106] = 481674261, [107] = 2, [108] = -1117713463, [109] = 0, [110] = 11, [111] = -1117713463, [112] = 23, [113] = 3, [114] = -1125940270, [115] = 33554690, [116] = 6, [117] = -1649296275, [118] = 749142, [119] = -1649296275, [120] = 752297, [121] = 1628143694, [122] = 12545, [123] = 2678400, [124] = 481674261, [125] = 0, [126] = 481674261, [127] = 3, [128] = -1820043071, [129] = 42074199, [130] = 777000, [131] = 1740131403, [132] = 503659997, [133] = 1818579976, [134] = 1634887525, [135] = 109, [136] = 1953451533, [137] = 1667851881, [138] = 1869182049, [139] = 29550, [140] = 926036997, [141] = 14135, [142] = -306628279, [143] = 2147483647, [144] = -1820043071, [145] = 33554507, [146] = 752297, [147] = 550588538, [148] = -186609086, [149] = 1936020488, [150] = 875837556, [151] = 51, [152] = 1886221321, [153] = 876115295, [154] = 13108, [155] = 9203775, [156] = 1628143859, [157] = -1820043071, [158] = 33555543, [159] = 749142, [160] = 565702414, [161] = -76957078, [162] = 1936020488, [163] = 909457012, [164] = 50, [165] = 24321, [166] = 960051466, [167] = 909194806, [168] = 3290677, [169] = -306628279, [170] = 1628144177} lock = {q_val = 94305459772832} responses = {<base::flat_multi_map<int, QVector<int>, std::less<void> >> = {_data = {<base::flat_multi_map<int, QVector<int>, std::less<void> >::transparent_compare> = {<std::less<void>> = {<No data fields>}, <No data fields>}, elements = std::vector of length 1, capacity 1 = {{first = 11, second = QVector<int> (size = 171) = {[0] = 364538944, [1] = 481674261, [2] = 2, [3] = 739712882, [4] = 0, [5] = -1649296275, [6] = 777000, [7] = 7, [8] = 4, [9] = 0, [10] = 1, [11] = 0, [12] = -1353671392, [13] = 0, [14] = 739712882, [15] = 0, [16] = -1649296275, [17] = 752297, [18] = 6, [19] = 5, [20] = 6, [21] = 0, [22] = 0, [23] = -1353671392, [24] = 0, [25] = 481674261, [26] = 2, [27] = -1125940270, [28] = 8320, [29] = 7, [30] = -1649296275, [31] = 777000, [32] = 1628143875, [33] = 73726, [34] = 1768386380, [35] = 1868767342, [36] = 540697956, [37] = 825307441, [38] = 539898161, [39] = 1847619396, [40] = 1730180207, [41] = 543520361, [42] = 1936287860, [43] = 1685021472, [44] = 1869881445, [45] = 2037276960, [46] = 744844911, [47] = 1702257952, [48] = 1718165614, [49] = 1701344288, [50] = 1634934905, [51] = 1752440953, [52] = 1629518181, [53] = 1713399154, [54] = 544042866, [55] = 1701602644, [56] = 1835102823, [57] = 1409944097, [58] = 544434536, [59] = 1701080931, [60] = 1851876128, [61] = 543515168, [62] = 1684370293, [63] = 544175136, [64] = 543649644, [65] = 1948282473, [66] = 1870209135, [67] = 1411412597, [68] = 1734700133, [69] = 544039282, [70] = 1868784481, [71] = 779382389, [72] = 543512352, [73] = 1702258030, [74] = 1935745138, [75] = 1953046635, [76] = 1919903264, [77] = 2037276960, [78] = 1852401780, [79] = 1818566759, [80] = 170812787, [81] = 543574282, [82] = 544567161, [83] = 1852074340, [84] = 1914729511, [85] = 1702195557, [86] = 1948284019, [87] = 544434536, [88] = 1701080931, [89] = 544825888, [90] = 1769566836, [91] = 1948280686, [92] = 1869357167, [93] = 1852383335, [94] = 544108320, [95] = 1953459809, [96] = 544367976, [97] = 1769366884, [98] = 539780451, [99] = 1886218611, [100] = 1763735916, [101] = 1919905383, [102] = 1752440933, [103] = 1830843241, [104] = 1634956133, [105] = 3040615, [106] = 481674261, [107] = 2, [108] = -1117713463, [109] = 0, [110] = 11, [111] = -1117713463, [112] = 23, [113] = 3, [114] = -1125940270, [115] = 33554690, [116] = 6, [117] = -1649296275, [118] = 749142, [119] = -1649296275, [120] = 752297, [121] = 1628143694, [122] = 12545, [123] = 2678400, [124] = 481674261, [125] = 0, [126] = 481674261, [127] = 3, [128] = -1820043071, [129] = 42074199, [130] = 777000, [131] = 1740131403, [132] = 503659997, [133] = 1818579976, [134] = 1634887525, [135] = 109, [136] = 1953451533, [137] = 1667851881, [138] = 1869182049, [139] = 29550, [140] = 926036997, [141] = 14135, [142] = -306628279, [143] = 2147483647, [144] = -1820043071, [145] = 33554507, [146] = 752297, [147] = 550588538, [148] = -186609086, [149] = 1936020488, [150] = 875837556, [151] = 51, [152] = 1886221321, [153] = 876115295, [154] = 13108, [155] = 9203775, [156] = 1628143859, [157] = -1820043071, [158] = 33555543, [159] = 749142, [160] = 565702414, [161] = -76957078, [162] = 1936020488, [163] = 909457012, [164] = 50, [165] = 24321, [166] = 960051466, [167] = 909194806, [168] = 3290677, [169] = -306628279, [170] = 1628144177}}}}}, <No data fields>} updates = std::vector of length 0, capacity 0 #32 0x000055c5306c71e0 in operator() (session={ptr_ = <optimized out>}, __closure=<optimized out>) at ./Telegram/SourceFiles/mtproto/session.cpp:68 callback = {<No data fields>} session = <optimized out> #33 operator() (this=<optimized out>, this=<optimized out>) at ./Telegram/SourceFiles/mtproto/session.cpp:47 callback = {<No data fields>} session = <optimized out> #34 std::__invoke_impl<void, MTP::details::SessionData::withSession<MTP::details::SessionData::queueTryToReceive()::<lambda(gsl::not_null<MTP::details::Session*>)> >::<lambda()>&> (__f=<optimized out>) at /usr/include/c++/10/bits/invoke.h:60 #35 std::__invoke_r<void, MTP::details::SessionData::withSession<MTP::details::SessionData::queueTryToReceive()::<lambda(gsl::not_null<MTP::details::Session*>)> >::<lambda()>&> (__fn=<optimized out>) at /usr/include/c++/10/bits/invoke.h:110 #36 std::_Function_handler<void(), MTP::details::SessionData::withSession<MTP::details::SessionData::queueTryToReceive()::<lambda(gsl::not_null<MTP::details::Session*>)> >::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=<optimized out>) at /usr/include/c++/10/bits/std_function.h:291 #37 0x000055c52ffb3672 in std::function<void ()>::operator()() const (this=0x55c534140de8) at /usr/include/c++/10/bits/std_function.h:622 #38 base::unique_function<void ()>::operator()() (this=0x55c534140de8) at ./Telegram/lib_base/base/unique_function.h:127 #39 base::InvokeQueuedEvent::invoke() (this=0x55c534140dd0) at ./Telegram/lib_base/base/invoke_queued.h:26 #40 Core::Sandbox::notifyOrInvoke(QObject*, QEvent*) (this=this@entry=0x7ffe09352750, receiver=receiver@entry=0x55c5332741c0, e=e@entry=0x55c534140dd0) at ./Telegram/SourceFiles/core/sandbox.cpp:526 #41 0x000055c52ffb375d in Core::Sandbox::notify(QObject*, QEvent*) (this=0x7ffe09352750, receiver=0x55c5332741c0, e=0x55c534140dd0) at ./Telegram/SourceFiles/core/sandbox.cpp:545 wrap = {f_ = {__this = 0x7ffe09352750}, invoke_ = true} #42 0x00007f0be07bafca in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55c5332741c0, event=0x55c534140dd0) at kernel/qcoreapplication.cpp:1063 selfRequired = true result = false cbdata = {0x55c5332741c0, 0x55c534140dd0, 0x7ffe093521bf} d = <optimized out> threadData = 0x55c533131450 scopeLevelCounter = {threadData = 0x55c533131450} #43 0x00007f0be07bda01 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x55c533131450) at kernel/qcoreapplication.cpp:1817 e = 0x55c534140dd0 pe = <optimized out> r = 0x55c5332741c0 relocker = {m_func = {__locker = @0x7ffe09352230}, m_invoke = true} event_deleter = {d = 0x55c534140dd0} locker = {_M_device = 0x55c533131480, _M_owns = false} startOffset = 0 i = @0x55c533131474: 2 cleanup = {receiver = 0x0, event_type = 0, data = 0x55c533131450, exceptionCaught = true} #44 0x00007f0be0812e93 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x55c53318b490) at kernel/qeventdispatcher_glib.cpp:277 source = 0x55c53318b490 #45 0x00007f0bdefa8e6b in g_main_dispatch (context=0x7f0bd0005000) at ../../../glib/gmain.c:3325 dispatch = 0x7f0be0812e80 <postEventSourceDispatch(GSource*, GSourceFunc, gpointer)> prev_source = 0x0 begin_time_nsec = 0 was_in_call = 0 user_data = 0x0 callback = 0x0 cb_funcs = <optimized out> cb_data = <optimized out> need_destroy = <optimized out> source = 0x55c53318b490 current = 0x55c533111b50 i = 0 __func__ = "g_main_dispatch" #46 g_main_context_dispatch (context=0x7f0bd0005000) at ../../../glib/gmain.c:4043 #47 0x00007f0bdefa9118 in g_main_context_iterate (context=context@entry=0x7f0bd0005000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4119 max_priority = 2147483647 timeout = 8 some_ready = 1 nfds = <optimized out> allocated_nfds = <optimized out> fds = 0x55c533192c30 #48 0x00007f0bdefa91cf in g_main_context_iteration (context=0x7f0bd0005000, may_block=may_block@entry=1) at ../../../glib/gmain.c:4184 retval = <optimized out> #49 0x00007f0be081251f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55c53318a330, flags={i = <optimized out>}) at kernel/qeventdispatcher_glib.cpp:423 d = 0x55c53314e510 canWait = true savedFlags = {i = 0} result = <optimized out> #50 0x00007f0be07b998b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe09352490, flags={i = 36}, flags@entry={i = 0}) at ../../include/QtCore/../../src/corelib/global/qflags.h:69 d = 0x55c533143bb0 threadData = <optimized out> locker = {val = 94305453486824} app = <optimized out> #51 0x00007f0be07c1c00 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121 threadData = 0x55c533131450 eventLoop = {<QObject> = {_vptr.QObject = 0x7f0be0a50888 <vtable for QEventLoop+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0984b20 <qt_meta_stringdata_QObject>, data = 0x7f0be0984a00 <qt_meta_data_QObject>, static_metacall = 0x7f0be07efd30 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x55c533143bb0}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0987ac0 <qt_meta_stringdata_Qt>, data = 0x7f0be0984c40 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f0be0a48100 <QObject::staticMetaObject>}, stringdata = 0x7f0be097f320 <qt_meta_stringdata_QEventLoop>, data = 0x7f0be097f2c0 <qt_meta_data_QEventLoop>, static_metacall = 0x7f0be07b96d0 <QEventLoop::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}} returnCode = <optimized out> #52 0x00007f0be0b88bdc in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1867 #53 0x00007f0bdfe720d5 in QApplication::exec() () at kernel/qapplication.cpp:2824 #54 0x000055c52ffb24f5 in Core::Sandbox::start() (this=this@entry=0x7ffe09352750) at ./Telegram/SourceFiles/core/sandbox.cpp:157 d = "/build/.local/share/TelegramDesktop" = {[0] = 47 '/', [1] = 98 'b', [2] = 117 'u', [3] = 105 'i', [4] = 108 'l', [5] = 100 'd', [6] = 47 '/', [7] = 46 '.', [8] = 108 'l', [9] = 111 'o', [10] = 99 'c', [11] = 97 'a', [12] = 108 'l', [13] = 47 '/', [14] = 115 's', [15] = 104 'h', [16] = 97 'a', [17] = 114 'r', [18] = 101 'e', [19] = 47 '/', [20] = 84 'T', [21] = 101 'e', [22] = 108 'l', [23] = 101 'e', [24] = 103 'g', [25] = 114 'r', [26] = 97 'a', [27] = 109 'm', [28] = 68 'D', [29] = 101 'e', [30] = 115 's', [31] = 107 'k', [32] = 116 't', [33] = 111 'o', [34] = 112 'p'} h = "ad351bd42ee3b510094aa578236fddb6" #55 0x000055c52ffa6f31 in Core::Launcher::executeApplication() (this=0x7ffe09352750) at ./Telegram/SourceFiles/core/launcher.cpp:528 arguments = {static kForwardArgumentCount = 1, _count = 1, _owned = std::vector of length 2, capacity 2 = {"/usr/bin/telegram-desktop" = {[0] = 47 '/', [1] = 117 'u', [2] = 115 's', [3] = 114 'r', [4] = 47 '/', [5] = 98 'b', [6] = 105 'i', [7] = 110 'n', [8] = 47 '/', [9] = 116 't', [10] = 101 'e', [11] = 108 'l', [12] = 101 'e', [13] = 103 'g', [14] = 114 'r', [15] = 97 'a', [16] = 109 'm', [17] = 45 '-', [18] = 100 'd', [19] = 101 'e', [20] = 115 's', [21] = 107 'k', [22] = 116 't', [23] = 111 'o', [24] = 112 'p'}, ""}, _arguments = std::vector of length 2, capacity 2 = {0x55c533143878 "/usr/bin/telegram-desktop", 0x55c533143a98 ""}} sandbox = warning: RTTI symbol not found for class 'std::_Sp_counted_ptr_inplace<rpl::event_stream<rpl::empty_value, rpl::no_error>::Data, std::allocator<rpl::event_stream<rpl::empty_value, rpl::no_error>::Data>, (__gnu_cxx::_Lock_policy)2>' warning: RTTI symbol not found for class 'std::_Sp_counted_ptr_inplace<rpl::event_stream<rpl::empty_value, rpl::no_error>::Data, std::allocator<rpl::event_stream<rpl::empty_value, rpl::no_error>::Data>, (__gnu_cxx::_Lock_policy)2>' {<QApplication> = {<QGuiApplication> = {<QCoreApplication> = {<QObject> = {_vptr.QObject = 0x55c53287f560 <vtable for Core::Sandbox+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0984b20 <qt_meta_stringdata_QObject>, data = 0x7f0be0984a00 <qt_meta_data_QObject>, static_metacall = 0x7f0be07efd30 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x55c53314a8c0}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0987ac0 <qt_meta_stringdata_Qt>, data = 0x7f0be0984c40 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f0be0a48100 <QObject::staticMetaObject>}, stringdata = 0x7f0be097f9e0 <qt_meta_stringdata_QCoreApplication>, data = 0x7f0be097f8c0 <qt_meta_data_QCoreApplication>, static_metacall = 0x7f0be07bc780 <QCoreApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static self = 0x7ffe09352750}, static staticMetaObject = {d = {superdata = {direct = 0x7f0be0a50a20 <QCoreApplication::staticMetaObject>}, stringdata = 0x7f0be1001820 <qt_meta_stringdata_QGuiApplication>, data = 0x7f0be10015a0 <qt_meta_data_QGuiApplication>, static_metacall = 0x7f0be0b8e420 <QGuiApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f0be11000a0 <QGuiApplication::staticMetaObject>}, stringdata = 0x7f0be0204b40 <qt_meta_stringdata_QApplication>, data = 0x7f0be02049c0 <qt_meta_data_QApplication>, static_metacall = 0x7f0bdfe755c0 <QApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, <QAbstractNativeEventFilter> = {_vptr.QAbstractNativeEventFilter = 0x55c53287f5e8 <vtable for Core::Sandbox+152>, d = 0x7f0be07e648e <QObjectPrivate::~QObjectPrivate()+94>}, _mainThreadId = 0x7f0bd6810440, _eventNestingLevel = 1, _loopNestingLevel = 0, _previousLoopNestingLevels = std::vector of length 0, capacity 1, _postponedCalls = std::vector of length 0, capacity 1, _handleObservables = {<QObject> = {_vptr.QObject = 0x55c53287f4f0 <vtable for SingleQueuedInvokation+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0984b20 <qt_meta_stringdata_QObject>, data = 0x7f0be0984a00 <qt_meta_data_QObject>, static_metacall = 0x7f0be07efd30 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x55c533190d90}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0987ac0 <qt_meta_stringdata_Qt>, data = 0x7f0be0984c40 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, _callback = {<std::_Maybe_unary_or_binary_function<void>> = {<No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x7ffe09352750, _M_const_object = 0x7ffe09352750, _M_function_pointer = 0x7ffe09352750, _M_member_pointer = (void (std::_Undefined_class::*)(class std::_Undefined_class * const)) 0x7ffe09352750, this adjustment 140729052899320}, _M_pod_data = "P'5\t\376\177\000\000\370'5\t\376\177\000"}, _M_manager = 0x55c52ffaebd0 <std::_Function_handler<void(), Core::Sandbox::Sandbox(gsl::not_null<Core::Launcher*>, int&, char**)::<lambda()> >::_M_manager(std::_Any_data &, const std::_Any_data &, std::_Manager_operation)>}, _M_invoker = 0x55c52ffaec10 <std::_Function_handler<void(), Core::Sandbox::Sandbox(gsl::not_null<Core::Launcher*>, int&, char**)::<lambda()> >::_M_invoke(const std::_Any_data &)>}, _pending = {<QAtomicInteger<int>> = {<QBasicAtomicInteger<int>> = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = 0}, static is_always_lock_free = true}}, <No data fields>}, <No data fields>}}, _launcher = {ptr_ = 0x55c533140ae0}, _application = std::unique_ptr<class Core::Application> = {get() = 0x55c5331449a0}, _localServerName = "/tmp/runtime-builder/ad351bd42ee3b510094aa578236fddb6-{87A94AB0-E370-4cde-98D3-ACC110C5967D}", _localSocketReadData = "", _localServer = {<QObject> = {_vptr.QObject = 0x7f0be129bbb0 <vtable for QLocalServer+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0984b20 <qt_meta_stringdata_QObject>, data = 0x7f0be0984a00 <qt_meta_data_QObject>, static_metacall = 0x7f0be07efd30 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x55c53318b860}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0987ac0 <qt_meta_stringdata_Qt>, data = 0x7f0be0984c40 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f0be0a48100 <QObject::staticMetaObject>}, stringdata = 0x7f0be1252820 <qt_meta_stringdata_QLocalServer>, data = 0x7f0be1252720 <qt_meta_data_QLocalServer>, static_metacall = 0x7f0be1200880 <QLocalServer::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, _localSocket = {<QIODevice> = {<QObject> = {_vptr.QObject = 0x7f0be129ba58 <vtable for QLocalSocket+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0984b20 <qt_meta_stringdata_QObject>, data = 0x7f0be0984a00 <qt_meta_data_QObject>, static_metacall = 0x7f0be07efd30 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x55c533190ee0}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0987ac0 <qt_meta_stringdata_Qt>, data = 0x7f0be0984c40 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f0be0a48100 <QObject::staticMetaObject>}, stringdata = 0x7f0be096eb60 <qt_meta_stringdata_QIODevice>, data = 0x7f0be096ea60 <qt_meta_data_QIODevice>, static_metacall = 0x7f0be06ebb20 <QIODevice::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f0be0a4d920 <QIODevice::staticMetaObject>}, stringdata = 0x7f0be1252200 <qt_meta_stringdata_QLocalSocket>, data = 0x7f0be12520c0 <qt_meta_data_QLocalSocket>, static_metacall = 0x7f0be11ff8e0 <QLocalSocket::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, _localClients = QList<struct QPair<QLocalSocket*, QByteArray>> (size = 0), _secondInstance = false, _updateChecker = std::unique_ptr<class Core::UpdateChecker> = {get() = 0x0}, _lastCrashDump = <QArrayData::shared_null+24> "", _sandboxProxy = {type = MTP::ProxyData::Type::None, host = "", port = 0, user = "", password = "", resolvedIPs = std::vector of length 0, capacity 0, resolvedExpireAt = 0}, _widgetUpdateRequests = {_data = std::shared_ptr<struct rpl::event_stream<rpl::empty_value, rpl::no_error>::Data> (use count 1, weak count 2) = {get() = 0x55c53316a1d0}}} processor = {<QObject> = {_vptr.QObject = 0x55c532907848 <vtable for Ui::MainQueueProcessor+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0984b20 <qt_meta_stringdata_QObject>, data = 0x7f0be0984a00 <qt_meta_data_QObject>, static_metacall = 0x7f0be07efd30 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x55c533191950}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0987ac0 <qt_meta_stringdata_Qt>, data = 0x7f0be0984c40 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, _lifetime = {_callbacks = std::vector of length 1, capacity 1 = {{_impl = {<std::_Maybe_unary_or_binary_function<void>> = {<No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x55c533191a10, _M_const_object = 0x55c533191a10, _M_function_pointer = 0x55c533191a10, _M_member_pointer = (void (std::_Undefined_class::*)(class std::_Undefined_class * const)) 0x55c533191a10, this adjustment 139688957316064}, _M_pod_data = "\020\032\031\063\305U\000\000\340\v\256\336\v\177\000"}, _M_manager = 0x55c52facb810 <std::_Function_handler<void (), rpl::details::consumer_base<rpl::empty_value, rpl::no_error, rpl::details::type_erased_handlers<rpl::empty_value, rpl::no_error> >::terminator() const::{lambda()#1}>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0x55c52facbb00 <std::_Function_handler<void (), rpl::details::consumer_base<rpl::empty_value, rpl::no_error, rpl::details::type_erased_handlers<rpl::empty_value, rpl::no_error> >::terminator() const::{lambda()#1}>::_M_invoke(std::_Any_data const&)>}}}}} environment = {_thread = {<QObject> = {_vptr.QObject = 0x7f0be0a4bf10 <vtable for QThread+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0984b20 <qt_meta_stringdata_QObject>, data = 0x7f0be0984a00 <qt_meta_data_QObject>, static_metacall = 0x7f0be07efd30 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x55c53318c480}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0987ac0 <qt_meta_stringdata_Qt>, data = 0x7f0be0984c40 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f0be0a48100 <QObject::staticMetaObject>}, stringdata = 0x7f0be08a0920 <qt_meta_stringdata_QThread>, data = 0x7f0be08a0840 <qt_meta_data_QThread>, static_metacall = 0x7f0be05d8590 <QThread::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, _adjuster = {_vptr.QObject = 0x7f0be0a50ea0 <vtable for QObject+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0984b20 <qt_meta_stringdata_QObject>, data = 0x7f0be0984a00 <qt_meta_data_QObject>, static_metacall = 0x7f0be07efd30 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x55c533191b50}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f0be0987ac0 <qt_meta_stringdata_Qt>, data = 0x7f0be0984c40 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}} #56 0x000055c52ffa7139 in Core::Launcher::exec() (this=0x55c533140ae0) at ./Telegram/SourceFiles/core/launcher.cpp:350 result = <optimized out> #57 0x000055c52fa89db5 in main(int, char**) (argc=argc@entry=1, argv=argv@entry=0x7ffe09352a48) at ./Telegram/SourceFiles/main.cpp:12 launcher = std::unique_ptr<class Core::Launcher> = {get() = 0x55c533140ae0} #58 0x00007f0bde948d0a in __libc_start_main (main=0x55c52fa89d80 <main(int, char**)>, argc=1, argv=0x7ffe09352a48, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffe09352a38) at ../csu/libc-start.c:308 result = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, 3940153402619864037, 94305396678800, 0, 0, 0, 7122528528231572453, 7148306308646708197}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x1, 0x7ffe09352a48}, data = {prev = 0x0, cleanup = 0x0, canceltype = 1}}} not_first_call = <optimized out> #59 0x000055c52fab60ba in _start () at /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:94 (gdb) quit
Description: Check message TTL every 24 hours Origin: https://github.com/telegramdesktop/tdesktop/commit/b2e829904fb7976784618dea18700dbb5568b42f#diff-1a8a66ba5ef178212c808f28d2952c728a53d3150033ec0bd15fe2819d67cd38 Author: John Preston <johnprestonm...@gmail.com> diff --git a/Telegram/SourceFiles/data/data_session.cpp b/Telegram/SourceFiles/data/data_session.cpp index 421a2096b..1068f1cb3 100644 --- a/Telegram/SourceFiles/data/data_session.cpp +++ b/Telegram/SourceFiles/data/data_session.cpp @@ -2020,8 +2020,11 @@ void Session::scheduleNextTTLs() { } const auto nearest = _ttlMessages.begin()->first; const auto now = base::unixtime::now(); - const auto timeout = (std::max(now, nearest) - now) * crl::time(1000); - _ttlCheckTimer.callOnce(timeout); + + // Set timer not more than for 24 hours. + const auto maxTimeout = TimeId(86400); + const auto timeout = std::min(std::max(now, nearest) - now, maxTimeout); + _ttlCheckTimer.callOnce(timeout * crl::time(1000)); } void Session::unregisterMessageTTL(
[2021.08.05 15:33:48] Launched version: 2006001, install beta: [FALSE], alpha: 0, debug mode: [FALSE] [2021.08.05 15:33:48] Executable dir: /usr/bin/, name: telegram-desktop [2021.08.05 15:33:48] Initial working dir: /build/telegram-desktop/ [2021.08.05 15:33:48] Working dir: /build/.local/share/TelegramDesktop/ [2021.08.05 15:33:48] Command line: telegram-desktop [2021.08.05 15:33:48] Executable path before check: /usr/bin/telegram-desktop [2021.08.05 15:33:48] Logs started [2021.08.05 15:33:48] Launcher filename: telegramdesktop.desktop [2021.08.05 15:33:50] Connecting local socket to /tmp/runtime-builder/ad351bd42ee3b510094aa578236fddb6-{87A94AB0-E370-4cde-98D3-ACC110C5967D}... [2021.08.05 15:33:50] Socket connect error 0, starting server and app... [2021.08.05 15:33:50] Moved logging from '/build/.local/share/TelegramDesktop/log_start0.txt' to '/build/.local/share/TelegramDesktop/log.txt'! [2021.08.05 15:33:50] Primary screen DPI: 96 [2021.08.05 15:33:52] App Info: reading settings... [2021.08.05 15:33:52] App Info: reading encrypted settings... [2021.08.05 15:33:52] Lang Info: Loaded cached, keys: 0 [2021.08.05 15:33:52] OpenAL Logging Level: (not set) [2021.08.05 15:33:52] Audio Playback Devices: ALSA Default;HDA Intel PCH, ALC255 Analog (CARD=PCH,DEV=0);HDA Intel PCH, HDMI 0 (CARD=PCH,DEV=3);HDA Intel PCH, HDMI 1 (CARD=PCH,DEV=7);HDA Intel PCH, HDMI 2 (CARD=PCH,DEV=8);HDA Intel PCH, HDMI 3 (CARD=PCH,DEV=9);HDA Intel PCH, HDMI 4 (CARD=PCH,DEV=10) [2021.08.05 15:33:52] Audio Playback Default Device: ALSA Default [2021.08.05 15:33:52] Audio Capture Devices: ALSA Default;HDA Intel PCH, ALC255 Analog (CARD=PCH,DEV=0) [2021.08.05 15:33:52] Audio Capture Default Device: ALSA Default [2021.08.05 15:33:53] Not using D-Bus global menu. [2021.08.05 15:33:53] Not using Unity launcher counter. [2021.08.05 15:33:53] System tray available: [TRUE] [2021.08.05 15:33:54] App Info: reading accounts info... [2021.08.05 15:33:54] App Info: reading encrypted info... [2021.08.05 15:33:54] App Info: reading map... [2021.08.05 15:33:54] App Info: reading encrypted map... [2021.08.05 15:33:54] App Info: reading encrypted user settings... [2021.08.05 15:33:54] App Info: encrypted user settings read. [2021.08.05 15:33:54] App Info: reading encrypted mtp data... [2021.08.05 15:33:54] MTP Info: read keys, current: 2, to destroy: 0 [2021.08.05 15:33:54] Map read time: 2 [2021.08.05 15:33:54] App Info: reading encrypted mtp config... [2021.08.05 15:33:54] TCP Error: network - Network unreachable [2021.08.05 15:33:54] HTTP Error: network error 99 - Network unreachable [2021.08.05 15:33:54] Export Info: Destroy top bar by controller removal. [2021.08.05 15:33:54] Using Qt tray icon. [2021.08.05 15:34:03] Assertion Failed! "timeout >= 0 && timeout <= std::numeric_limits<int>::max()" timer.cpp:101
signature.asc
Description: This is a digitally signed message part