diff options
Diffstat (limited to 'src/network/access/qftp.cpp')
-rw-r--r-- | src/network/access/qftp.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/network/access/qftp.cpp b/src/network/access/qftp.cpp index 52b9dd9169..18c5a16cb5 100644 --- a/src/network/access/qftp.cpp +++ b/src/network/access/qftp.cpp @@ -246,22 +246,25 @@ public: } data; bool is_ba; - static QBasicAtomicInt idCounter; }; -QBasicAtomicInt QFtpCommand::idCounter = Q_BASIC_ATOMIC_INITIALIZER(1); +static int nextId() +{ + static QBasicAtomicInt counter; + return 1 + counter.fetchAndAddRelaxed(1); +} QFtpCommand::QFtpCommand(QFtp::Command cmd, const QStringList &raw, const QByteArray &ba) : command(cmd), rawCmds(raw), is_ba(true) { - id = idCounter.fetchAndAddRelaxed(1); + id = nextId(); data.ba = new QByteArray(ba); } QFtpCommand::QFtpCommand(QFtp::Command cmd, const QStringList &raw, QIODevice *dev) : command(cmd), rawCmds(raw), is_ba(false) { - id = idCounter.fetchAndAddRelaxed(1); + id = nextId(); data.dev = dev; } |