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

QTCreator crashes when loading Makefiles created by qmake

    XMLWordPrintable

Details

    Description

      Makefiles can contain variable assignments which stretch over several lines. These assignments are written with \ at the eand of each line to indicate that the following line should be joined. This feature is used in Makefiles created by qmake.

      Whenever I try to load such a Makefile, qtcreator crashes immediately with SIGSEGV. The behavior is fully repeatable on my computer and I've attached a trivial Makefile which crashes my QTCreator every time I try to load it.

      Here is the backtrace:

      #0 deref (this=0x10000000c) at /usr/include/qt4/QtCore/qatomic_x86_64.h:133
      #1 deref (value=0x100000001, d=0x100000000) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:340
      #2 deref (this=0x29752a0) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:336
      #3 ~ExternalRefCount (this=0x29752a0, __in_chrg=<optimized out>) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:401
      #4 ~QSharedPointer (this=0x29752b0, __in_chrg=<optimized out>) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:466
      #5 QVector<QSharedPointer<TextEditor::Internal::Context> >::erase (this=this@entry=0x1510250, abegin=<optimized out>, aend=<optimized out>)
      at /usr/include/qt4/QtCore/qvector.h:639
      #6 0x00007f617d00a822 in erase (pos=<optimized out>, this=0x1510250) at /usr/include/qt4/QtCore/qvector.h:256
      #7 pop_back (this=0x1510250) at /usr/include/qt4/QtCore/qvector.h:283
      #8 TextEditor::Internal::Highlighter::changeContext (this=this@entry=0x15101f0, contextName=..., definition=..., assignCurrent=<optimized out>)
      at ../../../../src/plugins/texteditor/generichighlighter/highlighter.cpp:324
      #9 0x00007f617d00abd8 in TextEditor::Internal::Highlighter::handleContextChange (this=this@entry=0x15101f0, contextName=..., definition=..., setCurrent=setCurrent@entry=false)
      at ../../../../src/plugins/texteditor/generichighlighter/highlighter.cpp:366
      #10 0x00007f617d00b2d0 in TextEditor::Internal::Highlighter::highlightBlock (this=this@entry=0x15101f0, text=...)
      at ../../../../src/plugins/texteditor/generichighlighter/highlighter.cpp:130
      #11 0x00007f617cffcc13 in TextEditor::SyntaxHighlighterPrivate::reformatBlock (this=this@entry=0x29c1f40, block=..., from=from@entry=0, charsRemoved=charsRemoved@entry=0,
      charsAdded=charsAdded@entry=16818) at ../../../../src/plugins/texteditor/syntaxhighlighter.cpp:227
      #12 0x00007f617cffcdc9 in TextEditor::SyntaxHighlighterPrivate::reformatBlocks (this=this@entry=0x29c1f40, from=from@entry=0, charsRemoved=charsRemoved@entry=0, charsAdded=16818)
      at ../../../../src/plugins/texteditor/syntaxhighlighter.cpp:206
      #13 0x00007f617cffd07d in rehighlight (operation=QTextCursor::End, cursor=..., this=0x29c1f40) at ../../../../src/plugins/texteditor/syntaxhighlighter.cpp:67
      #14 TextEditor::SyntaxHighlighter::rehighlight (this=<optimized out>) at ../../../../src/plugins/texteditor/syntaxhighlighter.cpp:415
      #15 0x00007f617cf97b78 in TextEditor::PlainTextEditorWidget::setFontSettings (this=this@entry=0x2d3d910, fs=...) at ../../../../src/plugins/texteditor/plaintexteditor.cpp:134
      #16 0x00007f617cf983f9 in TextEditor::PlainTextEditorWidget::configure (this=this@entry=0x2d3d910, mimeType=...) at ../../../../src/plugins/texteditor/plaintexteditor.cpp:200
      #17 0x00007f617cf986d4 in TextEditor::PlainTextEditorWidget::configure (this=0x2d3d910) at ../../../../src/plugins/texteditor/plaintexteditor.cpp:154
      #18 0x00007f618ee82f8f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
      #19 0x00007f617cf9aeac in TextEditor::BaseTextDocument::open (this=0x29682c0, errorString=<optimized out>, fileName=..., realFileName=...)
      at ../../../../src/plugins/texteditor/basetextdocument.cpp:366
      #20 0x00007f617cfa222f in TextEditor::BaseTextEditorWidget::open (this=0x2d3d910, errorString=<optimized out>, fileName=..., realFileName=...)
      at ../../../../src/plugins/texteditor/basetexteditor.cpp:592
      #21 0x00007f6183cb09ee in Core::EditorManager::openEditor (this=this@entry=0x16e4a90, view=0x16f6c10, fileName=..., editorId=..., flags=..., newEditor=newEditor@entry=0x0)
      at ../../../../src/plugins/coreplugin/editormanager/editormanager.cpp:1326
      #22 0x00007f6183cb0df5 in Core::EditorManager::openEditor (this=0x16e4a90, fileName=..., editorId=..., flags=..., newEditor=0x0)
      at ../../../../src/plugins/coreplugin/editormanager/editormanager.cpp:1256
      #23 0x00007f6183c90304 in Core::Internal::MainWindow::openFiles (this=this@entry=0x159fe40, fileNames=..., flags=flags@entry=Core::ICore::SwitchMode)
      at ../../../../src/plugins/coreplugin/mainwindow.cpp:892
      #24 0x00007f6183c90774 in Core::Internal::MainWindow::openFile (this=0x159fe40) at ../../../../src/plugins/coreplugin/mainwindow.cpp:843
      #25 0x00007f6183d4f965 in Core::Internal::MainWindow::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=0x7ffff0443fa0)
      at .moc/release-shared/moc_mainwindow.cpp:132
      #26 0x00007f618ee82f8f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
      #27 0x00007f618f6caa32 in QAction::triggered(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #28 0x00007f618ee82f8f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
      #29 0x00007f618f6caa32 in QAction::triggered(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #30 0x00007f618f6cac20 in QAction::activate(QAction::ActionEvent) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #31 0x00007f618fb093d3 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #32 0x00007f618fb0f6b9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #33 0x00007f618f720850 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #34 0x00007f618fb1096b in QMenu::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #35 0x00007f618f6d0e9c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #36 0x00007f618f6d5b6b in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #37 0x00007f618ee6d59e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
      #38 0x00007f618f6d1cd3 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) ()
      from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #39 0x00007f618f74f41c in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #40 0x00007f618f74e44f in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #41 0x00007f618f775fa2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #42 0x00007f618dafeab5 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
      #43 0x00007f618dafede8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
      #44 0x00007f618dafeea4 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
      #45 0x00007f618ee9bc26 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
      #46 0x00007f618f775c1e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
      #47 0x00007f618ee6c2ef in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
      #48 0x00007f618ee6c578 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
      #49 0x00007f618ee71738 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
      #50 0x0000000000407b0d in main (argc=1, argv=<optimized out>) at ../../../src/app/main.cpp:437

      Attachments

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

        Activity

          People

            davschul David Schulz
            rudolf.leitgeb@gmx.at Rudolf Leitgeb
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes