644c06b48f
Saw this on my FreeBSD VM. The backtrace() function thought the nearest symbol to something was "_ZTSNSt3__110__function6__baseIFbPvS2_EEE", which decoded to typeinfo name for std::__1::__function::__base<bool (void*, void*)> The function pointer type inside parameter threw the decoder for a loop and caused it to crash with the failed assertion in qbytearray.h: inline char QByteArray::at(qsizetype i) const { Q_ASSERT(size_t(i) < size_t(size())); return d.data()[i]; } I noticed this - because tst_qtimer hung - because qFormatLogMessage deadlocked acquiring QMessagePattern::mutex - because the logging recursed - because qCleanupFuncinfo failed an assertion while formatting the backtrace (my QT_MESSAGE_PATTERN has %{backtrace}) - because QTimer::~QTimer -> QObject::killTimer printed a warning - because tst_QTimer::moveToThread produces warnings Pick-to: 5.15 6.2 6.4 6.5 Change-Id: Ieec322d73c1e40ad95c8fffd17464f86e9725991 Reviewed-by: Kai Köhne <kai.koehne@qt.io> |
||
---|---|---|
.. | ||
q_func_info | ||
qcompare | ||
qflags | ||
qfloat16 | ||
qgetputenv | ||
qglobal | ||
qglobalstatic | ||
qhooks | ||
qkeycombination | ||
qlogging | ||
qnativeinterface | ||
qnumeric | ||
qoperatingsystemversion | ||
qrandomgenerator | ||
qtendian | ||
qxp | ||
CMakeLists.txt |