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

[REG 6.5.2 -> 6.5.3] Qml crashes when singletons send signals

    XMLWordPrintable

Details

    • Linux/X11
    • 8c2ea501fdd07e44ee68e22dcc6d820ae93116f2

    Description

      We're heavily using QuickFlux (https://github.com/benlau/quickflux) in our application (284 Actions) and are experiencing crashes when a quickflux action is triggered.

      We've been using this architecture pretty much since Qt 6.2, and as of Qt 6.5.3 the application segfaults when an action is triggered. Also happens with 6.6.0

      The application crashes when the button is pressed even if we don't use the external library and make the AppActions component an Item {} singleton.

      I have attached a sample project which is not using any 3rd party libraries as well.

      1   QV4::RegExp::create                                                                                                                                                   qv4regexp.cpp                163 0x7ffff746bce6 
      2   ??                                                                                                                                                                                                     0x5555558106b0 
      3   ??                                                                                                                                                                                                     0x7fffe9813530 
      4   ??                                                                                                                                                                                                     0x7fffffffb460 
      5   ??                                                                                                                                                                                                     0x7fffdc232530 
      6   QV4::QQmlTypeWrapper::virtualResolveLookupGetter                                                                                                                      qqmltypewrapper.cpp          493 0x7ffff7796f89 
      7   QV4::FunctionObject::call                                                                                                                                             qv4functionobject_p.h        139 0x7ffff761efb9 
      8   QV4::Moth::VME::interpret                                                                                                                                             qv4vme_moth.cpp              873 0x7ffff761efb9 
      9   QV4::Moth::VME::exec                                                                                                                                                  qv4vme_moth.cpp              555 0x7ffff7623063 
      10  QV4::doCall                                                                                                                                                           qv4function.cpp              54  0x7ffff75779fa 
      11  QV4::Function::call                                                                                                                                                   qv4function.cpp              79  0x7ffff7577da9 
      12  operator()                                                                                                                                                            qv4function.cpp              30  0x7ffff7577f37 
      13  QV4::convertAndCall<QV4::Function::call(QObject *, void * *, const QMetaType *, int, QV4::ExecutionContext *)::<lambda(const QV4::Value *, const QV4::Value *, int)>> qv4jscall_p.h                197 0x7ffff7577f37 
      14  QV4::Function::call                                                                                                                                                   qv4function.cpp              27  0x7ffff7577f37 
      15  QQmlJavaScriptExpression::evaluate                                                                                                                                    qqmljavascriptexpression_p.h 248 0x7ffff76d4918 
      16  QQmlBoundSignalExpression::evaluate                                                                                                                                   qqmlboundsignal.cpp          199 0x7ffff7670eab 
      17  QQmlBoundSignal_callback                                                                                                                                              qqmlrefcount_p.h             62  0x7ffff76717a0 
      18  QQmlNotifier::emitNotify                                                                                                                                              qqmlnotifier.cpp             70  0x7ffff76fc565 
      19  doActivate<false>                                                                                                                                                     qobject_p.h                  67  0x7ffff64cc57e 
      20  QQuickAbstractButtonPrivate::handleRelease                                                                                                                            qquickabstractbutton.cpp     167 0x7fffe8734b49 
      ... <More>                                                                                                                                                                                                                
      
      

      Attachments

        1. SingletonCrash.zip
          2 kB
          Denis Hessberger
        2. TestQuickFluxCrash.zip
          138 kB
          Denis Hessberger

        Issue Links

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

          Activity

            People

              qtqmlteam Qt Qml Team User
              denishessberger Denis Hessberger
              Votes:
              3 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes