Uploaded image for project: 'Qt Creator'
  1. Qt Creator
  2. QTCREATORBUG-9747

Infinite recursion in Debugger::Internal::constructLogItemTree

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • Qt Creator 2.8.1
    • Qt Creator 2.8.0
    • Debugger
    • None
    • Qt Creator 2.7.85 (af9978fd5c7162f16cc4c21d632e0fb09bc0c98f)
      Based on Qt 5.2.0 (GCC 4.6.3, 64 bit)
      Built on Jul 2 2013
    • fd685138c78307e6925b597b949cb2936514302a

    Description

      When debugging some JavaScript in a QML file in C++/QML project, I add a variable to the QML/JS Console and Creator hangs for a while and then crashes. It looks to be infinite recursion:

      0       _int_malloc     malloc.c        3426    0x7ffff54102a9  
      1       __GI___libc_malloc      malloc.c        2924    0x7ffff5412fc5  
      2       QArrayData::allocate    qarraydata.cpp  98      0x7ffff5f31760  
      3       QTypedArrayData<unsigned short>::allocate       qarraydata.h    224     0x7ffff60092f1  
      4       QString::fromLatin1_helper      qstring.cpp     4078    0x7ffff5ffe9fc  
      5       QString::fromLatin1     qstring.h       481     0x7fffdd6d49df  
      6       Debugger::Internal::_   debuggerstringutils.h   40      0x7fffdd6d5552  
      7       Debugger::Internal::extractData qmlv8debuggerclient.cpp 827     0x7fffdd871798  
      8       Debugger::Internal::extractData qmlv8debuggerclient.cpp 834     0x7fffdd87195a  
      9       Debugger::Internal::constructLogItemTree        qmlv8debuggerclient.cpp 1775    0x7fffdd87bb8b  
      [...]
      26166   Debugger::Internal::constructLogItemTree        qmlv8debuggerclient.cpp 1775    0x7fffdd87bba8  
      26167   Debugger::Internal::QmlV8DebuggerClient::updateEvaluationResult qmlv8debuggerclient.cpp 1812    0x7fffdd87c09a  
      26168   Debugger::Internal::QmlV8DebuggerClient::messageReceived        qmlv8debuggerclient.cpp 1212    0x7fffdd87558b  
      26169   QmlDebug::QmlDebugConnectionPrivate::readyRead  qmldebugclient.cpp      208     0x7fffdd40fa67  
      26170   QmlDebug::QmlDebugConnectionPrivate::qt_static_metacall qmldebugclient.moc      74      0x7fffdd410a27  
      26171   QMetaObject::activate   qobject.cpp     3479    0x7ffff61b3808  
      26172   QMetaObject::activate   qobject.cpp     3354    0x7ffff61b316a  
      26173   QmlDebug::QPacketProtocol::readyRead    moc_qpacketprotocol.cpp 143     0x7fffdd42d1cb  
      26174   QmlDebug::QPacketProtocol::qt_static_metacall   moc_qpacketprotocol.cpp 74      0x7fffdd42cf99  
      26175   QMetaObject::activate   qobject.cpp     3479    0x7ffff61b3808  
      26176   QMetaObject::activate   qobject.cpp     3354    0x7ffff61b316a  
      26177   QmlDebug::QPacketProtocolPrivate::readyRead     qpacketprotocol.moc     160     0x7fffdd4218c1  
      26178   QmlDebug::QPacketProtocolPrivate::readyToRead   qpacketprotocol.cpp     192     0x7fffdd422017  
      26179   QmlDebug::QPacketProtocolPrivate::qt_static_metacall    qpacketprotocol.moc     94      0x7fffdd4216af  
      26180   QMetaObject::activate   qobject.cpp     3479    0x7ffff61b3808  
      26181   QMetaObject::activate   qobject.cpp     3354    0x7ffff61b316a  
      26182   QIODevice::readyRead    moc_qiodevice.cpp       153     0x7ffff623cd8f  
      26183   QIODevice::qt_static_metacall   moc_qiodevice.cpp       78      0x7ffff623cb05  
      26184   QMetaObject::activate   qobject.cpp     3479    0x7ffff61b3808  
      26185   QMetaObject::activate   qobject.cpp     3354    0x7ffff61b316a  
      26186   QIODevice::readyRead    moc_qiodevice.cpp       153     0x7ffff623cd8f  
      26187   QAbstractSocketPrivate::canReadNotification     qabstractsocket.cpp     723     0x7ffff6eeaa7a  
      26188   QAbstractSocketPrivate::readNotification        qabstractsocket_p.h     77      0x7ffff6ef0a96  
      26189   QAbstractSocketEngine::readNotification qabstractsocketengine.cpp       156     0x7ffff6edc593  
      26190   QReadNotifier::event    qnativesocketengine.cpp 1147    0x7ffff6ef8f8e  
      26191   QApplicationPrivate::notify_helper      qapplication.cpp        3442    0x7ffff731972e  
      26192   QApplication::notify    qapplication.cpp        2845    0x7ffff7316dde  
      26193   QCoreApplication::notifyInternal        qcoreapplication.cpp    871     0x7ffff61707ac  
      26194   QCoreApplication::sendEvent     qcoreapplication.h      232     0x7ffff6174499  
      26195   socketNotifierSourceDispatch    qeventdispatcher_glib.cpp       109     0x7ffff61e6566  
      26196   g_main_context_dispatch /lib/x86_64-linux-gnu/libglib-2.0.so.0          0x7ffff4c62d53  
      26197   ??      /lib/x86_64-linux-gnu/libglib-2.0.so.0          0x7ffff4c630a0  
      26198   g_main_context_iteration        /lib/x86_64-linux-gnu/libglib-2.0.so.0          0x7ffff4c63164  
      26199   QEventDispatcherGlib::processEvents     qeventdispatcher_glib.cpp       426     0x7ffff61e7223  
      26200   QPAEventDispatcherGlib::processEvents   qeventdispatcher_glib.cpp       123     0x7fffee7fc46a  
      26201   QEventLoop::processEvents       qeventloop.cpp  136     0x7ffff616d36c  
      26202   QEventLoop::exec        qeventloop.cpp  212     0x7ffff616d645  
      26203   QCoreApplication::exec  qcoreapplication.cpp    1124    0x7ffff6170e4a  
      26204   QGuiApplication::exec   qguiapplication.cpp     1198    0x7ffff675b0fc  
      26205   QApplication::exec      qapplication.cpp        2689    0x7ffff7316911  
      26206   main    main.cpp        520     0x40e0cf        
      

      I can share the project which reproduces this with the relevant maintainer.

      Attachments

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

        Activity

          People

            ajana Aurindam Jana
            mitch_curtis Mitch Curtis
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes