mirror of
https://github.com/telegramdesktop/tdesktop
synced 2025-02-15 19:47:03 +00:00
Finish working with localstorage before ~AuthSession.
This commit is contained in:
parent
f877bf7a46
commit
dc102bd9e8
@ -228,7 +228,7 @@ bool Instance::isQuitPrevent() {
|
||||
if (!_currentCall) {
|
||||
return false;
|
||||
}
|
||||
LOG(("Calls::Instance prevents quit, saving drafts..."));
|
||||
LOG(("Calls::Instance prevents quit, hanging up a call..."));
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -103,6 +103,10 @@ Application::~Application() {
|
||||
_window.reset();
|
||||
_mediaView.reset();
|
||||
|
||||
// This can call writeMap() that serializes AuthSession.
|
||||
// In case it gets called after authSessionDestroy() we get missing data.
|
||||
Local::finish();
|
||||
|
||||
// Some MTP requests can be cancelled from data clearing.
|
||||
authSessionDestroy();
|
||||
|
||||
@ -126,7 +130,6 @@ Application::~Application() {
|
||||
Media::Player::finish(_audio.get());
|
||||
style::stopManager();
|
||||
|
||||
Local::finish();
|
||||
Global::finish();
|
||||
ThirdParty::finish();
|
||||
|
||||
|
@ -709,6 +709,8 @@ AuthSessionSettings &GetStoredAuthSessionCache() {
|
||||
void _writeMap(WriteMapWhen when = WriteMapWhen::Soon);
|
||||
|
||||
void _writeLocations(WriteMapWhen when = WriteMapWhen::Soon) {
|
||||
Expects(_manager != nullptr);
|
||||
|
||||
if (when != WriteMapWhen::Now) {
|
||||
_manager->writeLocations(when == WriteMapWhen::Fast);
|
||||
return;
|
||||
@ -2398,6 +2400,8 @@ ReadMapState _readMap(const QByteArray &pass) {
|
||||
}
|
||||
|
||||
void _writeMap(WriteMapWhen when) {
|
||||
Expects(_manager != nullptr);
|
||||
|
||||
if (when != WriteMapWhen::Now) {
|
||||
_manager->writeMap(when == WriteMapWhen::Fast);
|
||||
return;
|
||||
@ -2530,7 +2534,7 @@ void finish() {
|
||||
_writeMap(WriteMapWhen::Now);
|
||||
_manager->finish();
|
||||
_manager->deleteLater();
|
||||
_manager = 0;
|
||||
_manager = nullptr;
|
||||
delete base::take(_localLoader);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user