Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-106119

Crash when calling findChild from TestCase

    XMLWordPrintable

Details

    • 84483bff4f (qt/qtdeclarative/dev) 56a3cdff3a (qt/qtdeclarative/6.4) 9628b73f6c (qt/qtdeclarative/6.3) 9628b73f6c (qt/tqtc-qtdeclarative/6.3) 56a3cdff3a (qt/tqtc-qtdeclarative/6.4) 84483bff4f (qt/tqtc-qtdeclarative/dev), bd6489e5d (tqtc/lts-6.2)

    Description

      With https://codereview.qt-project.org/c/qt/qtdeclarative/+/429512/7 I get a crash when running this test:

      16:46:43: Starting /home/mitch/dev/qt-dev-debug/qtdeclarative/tests/auto/quickcontrols2/controls/basic/tst_basic -input /home/mitch/dev/qt-dev/qtdeclarative/tests/auto/quickcontrols2/controls/data/tst_popup.qml Popup::test_dimmerComponentCreatedInCpp...
      ********* Start testing of tst_controls::Basic *********
      Config: Using QtTest library 6.5.0, Qt 6.5.0 (x86_64-little_endian-lp64 shared (dynamic) debug build; by GCC 9.4.0), ubuntu 20.04
      PASS   : tst_controls::Basic::Popup::initTestCase()
      AddressSanitizer:DEADLYSIGNAL
      =================================================================
      ==47449==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x7f2ff50d596d bp 0x7ffe747e7050 sp 0x7ffe747e6bf0 T0)
      ==47449==The signal is caused by a READ memory access.
      ==47449==Hint: address points to the zero page.
          #0 0x7f2ff50d596c in QuickTestResult::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) /home/mitch/dev/qt-dev-debug/qtdeclarative/src/qmltest/QuickTest_autogen/include/moc_quicktestresult_p.cpp:769
          #1 0x7f2ff50d77fe in QuickTestResult::qt_metacall(QMetaObject::Call, int, void**) /home/mitch/dev/qt-dev-debug/qtdeclarative/src/qmltest/QuickTest_autogen/include/moc_quicktestresult_p.cpp:908
          #2 0x7f2fedba4bcc in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qmetaobject.cpp:292
          #3 0x7f2ff0031fbf in QQmlObjectOrGadget::metacall(QMetaObject::Call, int, void**) const /home/mitch/dev/qt-dev/qtdeclarative/src/qml/qml/qqmlobjectorgadget.cpp:14
          #4 0x7f2fefaf3ff1 in CallMethod /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:1358
          #5 0x7f2fefaf6c60 in CallPrecise /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:1618
          #6 0x7f2fefaff049 in operator() /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2325
          #7 0x7f2fefaff310 in operator()<QV4::QObjectMethod::callInternal(const QV4::Value*, const QV4::Value*, int) const::<lambda()> > /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2303
          #8 0x7f2fefaffd9c in QV4::QObjectMethod::callInternal(QV4::Value const*, QV4::Value const*, int) const /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2325
          #9 0x7f2fefafe759 in QV4::QObjectMethod::virtualCall(QV4::FunctionObject const*, QV4::Value const*, QV4::Value const*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2262
          #10 0x7f2fef873e4f in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const /home/mitch/dev/qt-dev-debug/qtbase/include/QtQml/6.5.0/QtQml/private/../../../../../../../qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject_p.h:169
          #11 0x7f2fefc4c8d1 in QV4::Moth::VME::interpret(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*, char const*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:860
          #12 0x7f2fefc3e93d in QV4::Moth::VME::exec(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:542
          #13 0x7f2fefa0a2cf in QV4::ArrowFunction::virtualCall(QV4::FunctionObject const*, QV4::Value const*, QV4::Value const*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject.cpp:542
          #14 0x7f2fef873e4f in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const /home/mitch/dev/qt-dev-debug/qtbase/include/QtQml/6.5.0/QtQml/private/../../../../../../../qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject_p.h:169
          #15 0x7f2fefb9742f in QV4::Runtime::CallQmlContextPropertyLookup::call(QV4::ExecutionEngine*, unsigned int, QV4::Value*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4runtime.cpp:1398
          #16 0x7f2fefc4ef0d in QV4::Moth::VME::interpret(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*, char const*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:890
          #17 0x7f2fefc3e93d in QV4::Moth::VME::exec(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:542
          #18 0x7f2fefa0a2cf in QV4::ArrowFunction::virtualCall(QV4::FunctionObject const*, QV4::Value const*, QV4::Value const*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject.cpp:542
          #19 0x7f2fef873e4f in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const /home/mitch/dev/qt-dev-debug/qtbase/include/QtQml/6.5.0/QtQml/private/../../../../../../../qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject_p.h:169
          #20 0x7f2fefb99212 in QV4::Runtime::CallElement::call(QV4::ExecutionEngine*, QV4::Value const&, QV4::Value const&, QV4::Value*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4runtime.cpp:1509
          #21 0x7f2fefc4d2b0 in QV4::Moth::VME::interpret(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*, char const*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:866
          #22 0x7f2fefc3e93d in QV4::Moth::VME::exec(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:542
          #23 0x7f2fefa0a2cf in QV4::ArrowFunction::virtualCall(QV4::FunctionObject const*, QV4::Value const*, QV4::Value const*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject.cpp:542
          #24 0x7f2fef873e4f in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const /home/mitch/dev/qt-dev-debug/qtbase/include/QtQml/6.5.0/QtQml/private/../../../../../../../qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject_p.h:169
          #25 0x7f2fefb9742f in QV4::Runtime::CallQmlContextPropertyLookup::call(QV4::ExecutionEngine*, unsigned int, QV4::Value*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4runtime.cpp:1398
          #26 0x7f2fefc4ef0d in QV4::Moth::VME::interpret(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*, char const*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:890
          #27 0x7f2fefc3e93d in QV4::Moth::VME::exec(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:542
          #28 0x7f2fefa0a2cf in QV4::ArrowFunction::virtualCall(QV4::FunctionObject const*, QV4::Value const*, QV4::Value const*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject.cpp:542
          #29 0x7f2fef873e4f in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const /home/mitch/dev/qt-dev-debug/qtbase/include/QtQml/6.5.0/QtQml/private/../../../../../../../qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject_p.h:169
          #30 0x7f2fefb9742f in QV4::Runtime::CallQmlContextPropertyLookup::call(QV4::ExecutionEngine*, unsigned int, QV4::Value*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4runtime.cpp:1398
          #31 0x7f2fefc4ef0d in QV4::Moth::VME::interpret(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*, char const*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:890
          #32 0x7f2fefc3e93d in QV4::Moth::VME::exec(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:542
          #33 0x7f2fefa0a2cf in QV4::ArrowFunction::virtualCall(QV4::FunctionObject const*, QV4::Value const*, QV4::Value const*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject.cpp:542
          #34 0x7f2fef873e4f in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const /home/mitch/dev/qt-dev-debug/qtbase/include/QtQml/6.5.0/QtQml/private/../../../../../../../qt-dev/qtdeclarative/src/qml/jsruntime/qv4functionobject_p.h:169
          #35 0x7f2fefc4c8d1 in QV4::Moth::VME::interpret(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*, char const*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:860
          #36 0x7f2fefc3e93d in QV4::Moth::VME::exec(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:542
          #37 0x7f2fef9fdd84 in QV4::Function::call(QV4::Value const*, QV4::Value const*, int, QV4::ExecutionContext*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4function.cpp:62
          #38 0x7f2fef9fd669 in operator() /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4function.cpp:31
          #39 0x7f2fefa0040a in convertAndCall<QV4::Function::call(QObject*, void**, const QMetaType*, int, QV4::ExecutionContext*)::<lambda(const QV4::Value*, const QV4::Value*, int)> > /home/mitch/dev/qt-dev-debug/qtbase/include/QtQml/6.5.0/QtQml/private/../../../../../../../qt-dev/qtdeclarative/src/qml/jsruntime/qv4jscall_p.h:197
          #40 0x7f2fef9fd7bc in QV4::Function::call(QObject*, void**, QMetaType const*, int, QV4::ExecutionContext*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/jsruntime/qv4function.cpp:28
          #41 0x7f2feff31110 in QQmlJavaScriptExpression::evaluate(void**, QMetaType const*, int) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/qml/qqmljavascriptexpression.cpp:270
          #42 0x7f2fefd8ed60 in QQmlBoundSignalExpression::evaluate(void**) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/qml/qqmlboundsignal.cpp:199
          #43 0x7f2fefd8f900 in QQmlBoundSignal_callback(QQmlNotifierEndpoint*, void**) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/qml/qqmlboundsignal.cpp:314
          #44 0x7f2feffe7584 in QQmlNotifier::emitNotify(QQmlNotifierEndpoint*, void**) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/qml/qqmlnotifier.cpp:70
          #45 0x7f2fefe24bee in QQmlData::signalEmitted(QAbstractDeclarativeData*, QObject*, int, void**) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/qml/qqmlengine.cpp:344
          #46 0x7f2fedcc446e in void doActivate<false>(QObject*, int, void**) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qobject.cpp:3864
          #47 0x7f2fedcb023e in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qobject.cpp:4032
          #48 0x7f2ff0411090 in QQmlTimer::triggered() /home/mitch/dev/qt-dev-debug/qtdeclarative/src/qml/Qml_autogen/include/moc_qqmltimer_p.cpp:361
          #49 0x7f2ff040fb03 in QQmlTimer::ticked() /home/mitch/dev/qt-dev/qtdeclarative/src/qml/types/qqmltimer.cpp:285
          #50 0x7f2ff040fbe0 in QQmlTimer::event(QEvent*) /home/mitch/dev/qt-dev/qtdeclarative/src/qml/types/qqmltimer.cpp:297
          #51 0x7f2fedb6c8d9 in QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qcoreapplication.cpp:1193
          #52 0x7f2fedb6c02e in doNotify /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qcoreapplication.cpp:1122
          #53 0x7f2fedb6bed9 in QCoreApplication::notify(QObject*, QEvent*) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qcoreapplication.cpp:1105
          #54 0x7f2ff12a5e84 in QGuiApplication::notify(QObject*, QEvent*) /home/mitch/dev/qt-dev/qtbase/src/gui/kernel/qguiapplication.cpp:1928
          #55 0x7f2fedb6bcc5 in QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qcoreapplication.cpp:1026
          #56 0x7f2fedb6d530 in QCoreApplication::sendEvent(QObject*, QEvent*) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qcoreapplication.cpp:1442
          #57 0x7f2fedb6fc0d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qcoreapplication.cpp:1804
          #58 0x7f2fedb6e781 in QCoreApplication::sendPostedEvents(QObject*, int) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qcoreapplication.cpp:1663
          #59 0x7f2fee51347b in postEventSourceDispatch /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243
          #60 0x7f2fec4e817c in g_main_context_dispatch (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x5217c)
          #61 0x7f2fec4e83ff  (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x523ff)
          #62 0x7f2fec4e84a2 in g_main_context_iteration (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x524a2)
          #63 0x7f2fee514a68 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393
          #64 0x7f2fe622f6d0 in QXcbGlibEventDispatcher::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/mitch/dev/qt-dev/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:96
          #65 0x7f2fedb99b14 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qeventloop.cpp:100
          #66 0x7f2fedb9a515 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/mitch/dev/qt-dev/qtbase/src/corelib/kernel/qeventloop.cpp:182
          #67 0x7f2ff507e462 in quick_test_main_with_setup(int, char**, char const*, char const*, QObject*) /home/mitch/dev/qt-dev/qtdeclarative/src/qmltest/quicktest.cpp:650
          #68 0x7f2ff5078b98 in quick_test_main(int, char**, char const*, char const*) /home/mitch/dev/qt-dev/qtdeclarative/src/qmltest/quicktest.cpp:400
          #69 0x5652a3bdf180 in main /home/mitch/dev/qt-dev/qtdeclarative/tests/auto/quickcontrols2/controls/basic/tst_basic.cpp:12
          #70 0x7f2fed258082 in __libc_start_main ../csu/libc-start.c:308
          #71 0x5652a3bdc5cd in _start (/home/mitch/dev/qt-dev-debug/qtdeclarative/tests/auto/quickcontrols2/controls/basic/tst_basic+0x55cd)
      
      AddressSanitizer can not provide additional info.
      SUMMARY: AddressSanitizer: SEGV /home/mitch/dev/qt-dev-debug/qtdeclarative/src/qmltest/QuickTest_autogen/include/moc_quicktestresult_p.cpp:769 in QuickTestResult::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)
      ==47449==ABORTING
      16:46:49: /home/mitch/dev/qt-dev-debug/qtdeclarative/tests/auto/quickcontrols2/controls/basic/tst_basic exited with code 1
      

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            fabiankosmale Fabian Kosmale
            mitch_curtis Mitch Curtis
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes