diff --git a/src/corelib/kernel/qtimerinfo_unix.cpp b/src/corelib/kernel/qtimerinfo_unix.cpp index eb36478f22..c697bf03e5 100644 --- a/src/corelib/kernel/qtimerinfo_unix.cpp +++ b/src/corelib/kernel/qtimerinfo_unix.cpp @@ -285,12 +285,7 @@ void QTimerInfoList::registerTimer(int timerId, qint64 interval, Qt::TimerType t void QTimerInfoList::registerTimer(int timerId, milliseconds interval, Qt::TimerType timerType, QObject *object) { - QTimerInfo *t = new QTimerInfo; - t->id = timerId; - t->interval = interval; - t->timerType = timerType; - t->obj = object; - t->activateRef = nullptr; + QTimerInfo *t = new QTimerInfo(timerId, interval, timerType, object); steady_clock::time_point expected = updateCurrentTime() + interval; diff --git a/src/corelib/kernel/qtimerinfo_unix_p.h b/src/corelib/kernel/qtimerinfo_unix_p.h index 0ee81f6967..98578bdc0e 100644 --- a/src/corelib/kernel/qtimerinfo_unix_p.h +++ b/src/corelib/kernel/qtimerinfo_unix_p.h @@ -26,12 +26,17 @@ QT_BEGIN_NAMESPACE // internal timer info struct QTimerInfo { - int id; // - timer identifier - Qt::TimerType timerType; // - timer type - std::chrono::milliseconds interval; // - timer interval + QTimerInfo(int timerId, std::chrono::milliseconds msecs, Qt::TimerType type, QObject *obj) + : interval(msecs), id(timerId), timerType(type), obj(obj) + { + } + std::chrono::steady_clock::time_point timeout; // - when to actually fire - QObject *obj; // - object to receive event - QTimerInfo **activateRef; // - ref from activateTimers + std::chrono::milliseconds interval = std::chrono::milliseconds{-1}; // - timer interval + int id = -1; // - timer identifier + Qt::TimerType timerType; // - timer type + QObject *obj = nullptr; // - object to receive event + QTimerInfo **activateRef = nullptr; // - ref from activateTimers }; class Q_CORE_EXPORT QTimerInfoList