diff options
author | Emeric <emeric.grange@gmail.com> | 2020-04-20 18:33:30 +0200 |
---|---|---|
committer | Emeric <emeric.grange@gmail.com> | 2020-04-20 18:33:30 +0200 |
commit | b4a1f19d81b22b62bf20f6e60f9753d937fd9b03 (patch) | |
tree | 059492badd427675c9af6a87fa353edf2a806c34 | |
parent | Merge pull request #97 from autoantwort/master (diff) | |
download | singleapplication-b4a1f19d81b22b62bf20f6e60f9753d937fd9b03.tar.xz |
Fix a crash when exiting an application on Android and iOS
-rw-r--r-- | singleapplication_p.cpp | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/singleapplication_p.cpp b/singleapplication_p.cpp index ce50383..70be683 100644 --- a/singleapplication_p.cpp +++ b/singleapplication_p.cpp @@ -69,19 +69,21 @@ SingleApplicationPrivate::~SingleApplicationPrivate() delete socket; } - memory->lock(); - InstancesInfo* inst = static_cast<InstancesInfo*>(memory->data()); - if( server != nullptr ) { - server->close(); - delete server; - inst->primary = false; - inst->primaryPid = -1; - inst->primaryUser[0] = '\0'; - inst->checksum = blockChecksum(); - } - memory->unlock(); + if( memory != nullptr ) { + memory->lock(); + InstancesInfo* inst = static_cast<InstancesInfo*>(memory->data()); + if( server != nullptr ) { + server->close(); + delete server; + inst->primary = false; + inst->primaryPid = -1; + inst->primaryUser[0] = '\0'; + inst->checksum = blockChecksum(); + } + memory->unlock(); - delete memory; + delete memory; + } } QString SingleApplicationPrivate::getUsername() |