Details
-
Bug
-
Resolution: Done
-
Not Evaluated
-
Qt Creator 2.5.2
-
None
-
Ubuntu 12.10 on x86_64 with KDE PPA from http://ppa.launchpad.net
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