mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-07-10 23:42:46 -07:00
Fix crash on exit when compiled using MinGW
This commit is contained in:
parent
23eb117a05
commit
f35dbdfb8b
1 changed files with 6 additions and 4 deletions
|
@ -35,11 +35,13 @@
|
||||||
#include <QLocale>
|
#include <QLocale>
|
||||||
#include <QRegExp>
|
#include <QRegExp>
|
||||||
#include <QtGlobal>
|
#include <QtGlobal>
|
||||||
#ifdef Q_OS_MACOS
|
|
||||||
|
#if defined(Q_OS_MACOS) || defined(__MINGW32__)
|
||||||
|
#define QBT_USES_QTHREADSTORAGE
|
||||||
#include <QThreadStorage>
|
#include <QThreadStorage>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "../tristatebool.h"
|
#include "base/tristatebool.h"
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
|
@ -139,7 +141,7 @@ int Utils::String::naturalCompare(const QString &left, const QString &right, con
|
||||||
// provide a single `NaturalCompare` instance for easy use
|
// provide a single `NaturalCompare` instance for easy use
|
||||||
// https://doc.qt.io/qt-5/threads-reentrancy.html
|
// https://doc.qt.io/qt-5/threads-reentrancy.html
|
||||||
if (caseSensitivity == Qt::CaseSensitive) {
|
if (caseSensitivity == Qt::CaseSensitive) {
|
||||||
#ifdef Q_OS_MACOS // workaround for Apple xcode: https://stackoverflow.com/a/29929949
|
#ifdef QBT_USES_QTHREADSTORAGE
|
||||||
static QThreadStorage<NaturalCompare> nCmp;
|
static QThreadStorage<NaturalCompare> nCmp;
|
||||||
if (!nCmp.hasLocalData())
|
if (!nCmp.hasLocalData())
|
||||||
nCmp.setLocalData(NaturalCompare(Qt::CaseSensitive));
|
nCmp.setLocalData(NaturalCompare(Qt::CaseSensitive));
|
||||||
|
@ -150,7 +152,7 @@ int Utils::String::naturalCompare(const QString &left, const QString &right, con
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef Q_OS_MACOS
|
#ifdef QBT_USES_QTHREADSTORAGE
|
||||||
static QThreadStorage<NaturalCompare> nCmp;
|
static QThreadStorage<NaturalCompare> nCmp;
|
||||||
if (!nCmp.hasLocalData())
|
if (!nCmp.hasLocalData())
|
||||||
nCmp.setLocalData(NaturalCompare(Qt::CaseInsensitive));
|
nCmp.setLocalData(NaturalCompare(Qt::CaseInsensitive));
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue