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

[REG 5.7->5.8]: qscxmlc crashes with transitionless statechart.scxml

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 5.8.0
    • 5.8.0
    • XML: SCXML
    • None
    • Windows
    • 4704292500b98143eee9b0fb0b6a34a858ed1253

    Description

      When adding a new scxml document to a project in Qt Creator, scxmlc is called in the background and the new, empty statechart causes qscxmlc to crash:

      .  0  Id: 314.23fc Suspend: 1 Teb: 00319000 Unfrozen
      ChildEBP RetAddr  
      0055f404 606c51dd Qt5Cored!qt_message_fatal(QtMsgType __formal = QtFatalMsg (0n3), class QMessageLogContext * context = 0x0055f454, class QString * message = 0x0055f424)+0xa1 [c:\users\aportale\dev\qt5\qtbase\src\corelib\global\qlogging.cpp @ 1678]
      0055f434 606ba553 Qt5Cored!QMessageLogger::fatal(char * msg = 0x60b34df4 "ASSERT: "%s" in file %s, line %d")+0x7d [c:\users\aportale\dev\qt5\qtbase\src\corelib\global\qlogging.cpp @ 796]
      0055f474 00157ff4 Qt5Cored!qt_assert(char * assertion = 0x00180310 "transitionIndex != -1", char * file = 0x001801f4 "..\..\src\scxml\qscxmltabledata.cpp", int line = 0n315)+0x53 [c:\users\aportale\dev\qt5\qtbase\src\corelib\global\qglobal.cpp @ 3070]
      0055f4cc 00157225 qscxmlc!`anonymous namespace'::TableDataBuilder::visit(struct DocumentModel::Transition * transition = 0xcdcdcdcd)+0x44 [c:\users\aportale\dev\qt5\qtscxml\src\scxml\qscxmltabledata.cpp @ 315]
      0055f518 001258ad qscxmlc!`anonymous namespace'::TableDataBuilder::visit(struct DocumentModel::Scxml * node = 0x0091a8a0)+0x265 [c:\users\aportale\dev\qt5\qtscxml\src\scxml\qscxmltabledata.cpp @ 203]
      0055f52c 0014ca5d qscxmlc!DocumentModel::Scxml::accept(class DocumentModel::NodeVisitor * visitor = 0x0055f57c)+0x1d [c:\users\aportale\dev\qt5\qtscxml\src\scxml\qscxmlcompiler.cpp @ 1278]
      0055f570 001462b7 qscxmlc!`anonymous namespace'::TableDataBuilder::buildTableData(struct DocumentModel::ScxmlDocument * doc = 0x00917280)+0x1bd [c:\users\aportale\dev\qt5\qtscxml\src\scxml\qscxmltabledata.cpp @ 91]
      0055f650 0010d436 qscxmlc!QScxmlInternal::GeneratedTableData::build(struct DocumentModel::ScxmlDocument * doc = 0x00917280, class QScxmlInternal::GeneratedTableData * table = 0x0091a5a0, struct QScxmlInternal::GeneratedTableData::MetaDataInfo * metaDataInfo = 0x00917150, struct QScxmlInternal::GeneratedTableData::DataModelInfo * dataModelInfo = 0x009228d0, class std::function<int __cdecl(QScxmlExecutableContent::InvokeInfo const &,QVector<int> const &,QVector<QScxmlExecutableContent::ParameterInfo> const &,QSharedPointer<DocumentModel::ScxmlDocument>)> func = {...})+0x47 [c:\users\aportale\dev\qt5\qtscxml\src\scxml\qscxmltabledata.cpp @ 912]
      0055f734 001097d4 qscxmlc!CppDumper::dump(struct TranslationUnit * unit = 0x0055f840)+0x246 [c:\users\aportale\dev\qt5\qtscxml\tools\qscxmlc\scxmlcppdumper.cpp @ 441]
      0055f7b4 00109482 qscxmlc!write(struct TranslationUnit * tu = 0x0055f840)+0x284 [c:\users\aportale\dev\qt5\qtscxml\tools\qscxmlc\qscxmlc.cpp @ 85]
      0055f9fc 00158384 qscxmlc!run(class QStringList * arguments = 0x0055fa14)+0x10a2 [c:\users\aportale\dev\qt5\qtscxml\tools\qscxmlc\qscxmlc.cpp @ 231]
      0055fa28 00159dae qscxmlc!main(int argc = 0n6, char ** argv = 0x009000b8)+0xa4 [c:\users\aportale\dev\qt5\qtscxml\tools\qscxmlc\main.cpp @ 41]
      0055fa3c 00159c30 qscxmlc!invoke_main(void)+0x1e [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl @ 64]
      0055fa94 00159acd qscxmlc!__scrt_common_main_seh(void)+0x150 [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl @ 253]
      0055fa9c 00159dc8 qscxmlc!__scrt_common_main(void)+0xd [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl @ 296]
      0055faa4 753462c4 qscxmlc!mainCRTStartup(void)+0x8 [f:\dd\vctools\crt\vcstartup\src\startup\exe_main.cpp @ 17]
      WARNING: Stack unwind information not available. Following frames may be wrong.
      0055fab8 77ea0719 KERNEL32!BaseThreadInitThunk+0x24
      0055fb00 77ea06e4 ntdll!RtlSubscribeWnfStateChangeNotification+0x439
      0055fb10 00000000 ntdll!RtlSubscribeWnfStateChangeNotification+0x404
      

      Attachments

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

        Activity

          People

            erikv Erik Verbruggen
            portale Alessandro Portale
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes