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

QtCreator sometimes segfaults in QMakeParser::parsedProFile when parsing .pro files

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P1: Critical
    • None
    • Qt Creator 4.0.0
    • None
    • Ubuntu 14.04.4LTS x86_64, running Linux 3.19.0-59
      QtCreator 4.0.0 and 4.0.1-pre from Qt 5.7.0rc424, both from official installers.

    Description

      QtCreator sometimes crashes when parsing certain .pro files. Here is the backtrace:

      #0  0x00007f0642c4224b in QMakeParser::parsedProFile(QString const&, QFlags<QMakeParser::ParseFlag>) ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #1  0x00007f0642c4b5b6 in QMakeEvaluator::evaluateFile(QString const&, QMakeHandler::EvalFileType, QFlags<QMakeEvaluator::LoadFlag>) () from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #2  0x00007f0642c4ba10 in QMakeEvaluator::evaluateFileChecked(QString const&, QMakeHandler::EvalFileType, QFlags<QMakeEvaluator::LoadFlag>) ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #3  0x00007f0642c4bb0e in QMakeEvaluator::evaluateFileInto(QString const&, QHash<ProKey, ProStringList>*, QFlags<QMakeEvaluator::LoadFlag>) ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #4  0x00007f0642c55fb0 in QMakeEvaluator::evaluateBuiltinConditional(int, ProKey const&, ProStringList const&) () from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #5  0x00007f0642c48144 in QMakeEvaluator::evaluateConditionalFunction(ProKey const&, unsigned short const*&) () from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #6  0x00007f0642c48948 in QMakeEvaluator::visitProBlock(unsigned short const*) ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #7  0x00007f0642c48ff4 in QMakeEvaluator::evaluateFunction(ProFunctionDef const&, QList<ProStringList> const&, QMakeEvaluator::VisitReturn*) ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #8  0x00007f0642c4a5e2 in QMakeEvaluator::evaluateBoolFunction(ProFunctionDef const&, QList<ProStringList> const&, ProString const&) () from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #9  0x00007f0642c4802b in QMakeEvaluator::evaluateConditionalFunction(ProKey const&, unsigned short const*&) () from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #10 0x00007f0642c48948 in QMakeEvaluator::visitProBlock(unsigned short const*) ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #11 0x00007f0642c4ab9d in QMakeEvaluator::visitProFile(ProFile*, QMakeHandler::EvalFileType, QFlags<QMakeEvaluator::LoadFlag>) () from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #12 0x00007f0642c523f2 in ProFileEvaluator::accept(ProFile*, QFlags<QMakeEvaluator::LoadFlag>) ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQtSupport.so
      #13 0x00007f063e617cee in QmakeProjectManager::QmakeProFileNode::evaluate(QmakeProjectManager::Internal::EvalInput const&) () from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQmakeProjectManager.so
      #14 0x00007f063e61b173 in QmakeProjectManager::QmakeProFileNode::asyncEvaluate(QFutureInterface<QmakeProjectManager::Internal::EvalResult*>&, QmakeProjectManager::Internal::EvalInput) ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQmakeProjectManager.so
      #15 0x00007f063e62ac7e in ?? ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQmakeProjectManager.so
      #16 0x00007f063e62adfa in ?? ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQmakeProjectManager.so
      #17 0x00007f063e62afef in ?? ()
         from /opt/qt570rc424/Tools/QtCreator/lib/qtcreator/plugins/libQmakeProjectManager.so
      #18 0x00007f0668d9330d in ?? () from /opt/qt570rc424/Tools/QtCreator/bin/../lib/Qt/lib/libQt5Core.so.5
      #19 0x00007f0668d96c89 in ?? () from /opt/qt570rc424/Tools/QtCreator/bin/../lib/Qt/lib/libQt5Core.so.5
      #20 0x00007f06687a7182 in start_thread (arg=0x7f06221e4700) at pthread_create.c:312
      #21 0x00007f0667cb447d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

      I don't have an isolated reproduction .pro, can try to provide one if necessary. I have a core dump, feel free to ask me to extract additional info from it.

      Attachments

        Issue Links

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

          Activity

            People

              hunger Tobias Hunger
              ronjouch Ronan Jouchet
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes