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

Crash on "move line up"

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P1: Critical
    • Resolution: Done
    • Affects Version/s: Qt Creator 2.6.0-beta
    • Fix Version/s: None
    • Component/s: C/C++/Obj-C++ Support
    • Labels:

      Description

      I get a reproduciable crash on moving a function up a line.

      #0  0x00007ffff4815405 in *__GI_raise (sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
              pid = <optimized out>
              selftid = <optimized out>
      #1  0x00007ffff4818680 in *__GI_abort () at abort.c:92
              act = {__sigaction_handler = {sa_handler = 0x7fffffff7ea0, sa_sigaction = 0x7fffffff7ea0}, 
                sa_mask = {__val = {140737312217114, 6442752, 140733251655344, 140737488322240, 140737312216389, 
                    140737295326112, 140737353946336, 140737488322336, 4294967295, 0, 5, 7357608, 0, 0, 6448528, 
                    140737311637504}}, sa_flags = -136403134, sa_restorer = 0x5}
              sigs = {__val = {32, 0 <repeats 15 times>}}
      #2  0x00007ffff581229a in qt_message_fatal (context=..., message=...) at global/qlogging.cpp:864
      No locals.
      #3  0x00007ffff5810526 in QMessageLogger::fatal (this=0x7fffffff8110, 
          msg=0x7ffff5ab3dd8 "ASSERT: \"%s\" in file %s, line %d") at global/qlogging.cpp:358
              message = {static null = {<No data fields>}, d = 0x7ffef86da180}
              ap = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7fffffff80f0, 
                  reg_save_area = 0x7fffffff8020}}
      #4  0x00007ffff580bc30 in qt_assert (assertion=0x7ffff62a7470 "range.start + range.length <= length", 
          file=0x7ffff62a72c9 "text/qtextengine.cpp", line=1430) at global/qglobal.cpp:1951
              __PRETTY_FUNCTION__ = "void qt_assert(const char*, const char*, int)"
      #5  0x00007ffff604115a in QTextEngine::itemize (this=0x7fff04cf8d40) at text/qtextengine.cpp:1430
              range = @0x7fff031ce000: {start = 26, length = 1, format = {<QTextFormat> = {
                    static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff65aede0, 
                        data = 0x7ffff62d76c0, static_metacall = 0, relatedMetaObjects = 0x0, extradata = 0x0}}, 
                    d = {d = 0x0}, format_type = 2}, <No data fields>}}
              format = {<QTextFormat> = {static staticMetaObject = {d = {superdata = 0x0, 
                      stringdata = 0x7ffff65aede0, data = 0x7ffff62d76c0, static_metacall = 0, 
                      relatedMetaObjects = 0x0, extradata = 0x0}}, d = {d = 0x1e9a020}, 
                  format_type = 2}, <No data fields>}
              i = 3
              capitalization = {a = 128, s = 25, ptr = 0x7fffffffa370 "", {
                  array = '\000' <repeats 25 times>, "X\001\366\377\177\000\000p\274c\000\000\000\000\000\200\344\066\001\377\177\000\000@z+\000\377\177\000\001\360\346V\001\377\177\000\000У\377\377\377\177\000\000j\346\366\365\377\177\000\000\360\243\377\377\377\177\000\000p\274c\000\000\000\000\000\360\243\377\377\377\177\000\000\000\325\347\365\377\177\000\000\000\244\377\377\377\177\000\000\000\325\347\365\377\177\000", 
                  q_for_alignment_1 = 0, q_for_alignment_2 = 0}}
              edges = {d = {d = 0x7ffef872adb0}}
              p = 0x1baa840
              scriptAnalysis = {a = 4096, s = 25, ptr = 0x7fffffff8160, {
                  array = '\000' <repeats 50 times>, "b\000\377\377\377\177P\260\377\377\377\177\000\000\000\001\000\000\200\003\000\000\300\377\377\377", '\000' <repeats 12 times>, "\002\000\000\000\000\000\000\000 \330U\002\000\000\000\000\002\000\000\000\000\000\000\000\200\333", '\000' <repeats 14 times>"\200, \333", '\000' <repeats 14 times>"\200, \003\000\000\000\000\000\000\200\207\377\377\377\177\000\000\340\267\061\000\377\177\000\000\244\207\377\377\377\177\000\000\260\207\377\377\377\177\000\000\274\207\377\377\377\177\000\000ȇ\377\377\377\177\000\000\003\000\000\000\000\000\000\000\003\000\000\000\377\377\377\177\003\000\000\000\023\000\000\000\300\006", '\000' <repeats 14 times>"\200, \063e\350\377\177\000\000x\207\377\377\377\177\000\000\000\000\207\000\000\000\000\000\370\060\207\000\000\000\000\000\000\330\000\000\377\177\000\000\025\377\177\365\377\177\000\000\000\330\000\000\000\000\000\000\370\060\207", '\000' <repeats 13 times>"\370, \060\207", '\000' <repeats 14 times>, "O"..., q_for_alignment_1 = 0, q_for_alignment_2 = 0}}
              analysis = 0x7fffffff8192
              lastScript = 0
              itemizer = {m_string = @0x7fff03b051a0, m_analysis = 0x7fffffff8160, m_items = @0x7fff03b05140, 
                m_splitter = 0x0}
              control = {ctx = {{level = 4166176776, override = 254}, {level = 19279120, override = 255}, {
                    level = 4166176776, override = 254}, {level = 19279120, override = 255}, {level = 4294943152, 
                    override = 255}, {level = 4126598144, override = 255}, {level = 0, override = 255}, {
                    level = 19279120, override = 255}, {level = 4294943168, override = 255}, {level = 4126608231, 
                    override = 255}, {level = 4294943184, override = 255}, {level = 19279120, override = 255}, {
                    level = 0, override = 43}, {level = 0, override = false}, {level = 4294943232, 
                    override = 255}, {level = 19279120, override = 255}, {level = 0, override = 255}, {
                    level = 4127514350, override = 255}, {level = 1, override = 255}, {level = 4126608231, 
                    override = 255}, {level = 0, override = 255}, {level = 20662512, override = 255}, {level = 0, 
                    override = 255}, {level = 4294943360, override = 255}, {level = 256, override = false}, {
                    level = 4294943280, override = 255}, {level = 16, override = 255}, {level = 4294943344, 
                    override = 255}, {level = 0, override = 25}, {level = 4294943352, override = 255}, {
                    level = 4294945472, override = 255}, {level = 4127457596, override = 255}, {level = 0, 
                    override = 128}, {level = 4168035632, override = 254}, {level = 256, override = true}, {
                    level = 4294943360, override = 255}, {level = 0, override = false}, {level = 4127518539, 
                    override = 128}, {level = 54912, override = 255}, {level = 0, override = false}, {level = 0, 
                    override = false}, {level = 0, override = false}, {level = 0, override = false}, {
                    level = 48050928, override = 255}, {level = 4294943664, override = 255}, {level = 48050928, 
                    override = 255}, {level = 34096608, override = false}, {level = 4126598144, override = 255}, {
                    level = 0, override = false}, {level = 2849344, override = 255}, {level = 4294943504, 
                    override = 255}, {level = 4126598762, override = 255}, {level = 4294943520, override = 255}, {
                    level = 34096608, override = false}, {level = 4294943536, override = 255}, {
                    level = 4128401919, override = 255}, {level = 6536304, override = false}, {level = 34096608, 
                    override = false}, {level = 4294943584, override = 255}, {level = 4128403057, override = 255}, 
                  {level = 39179200, override = false}}, cCtx = 0, base = 0, level = 0, override = false}
      ---Type <return> to continue, or q <return> to quit---
              e = 0x7fffea619b6a
              length = 25
              ignore = true
              rtl = false
              uc = 0x7fffea619b6a
      #6  0x00007ffff603ff75 in QTextEngine::attributes (this=0x7fff04cf8d40) at text/qtextengine.cpp:1206
              scriptItems = {a = 43, s = 0, ptr = 0x2b00000000, {
                  array = "\000\000\000\000\000\220u@\000\000\000\000\000X\213@\220o\371\001\000\000\000\000\000\000\000\000\377\177\000\000\000\325\347\365\377\177\000\000+\000\000\000@\000\000\000\b\320R\370\376\177\000\000\b\322R\370\376\177\000\000\b\323R\370\376\177\000\000\b\324R\370\376\177\000\000\b\325R\370\376\177\000\000\b\326R\370\376\177\000\000@\000\000\000\000\000\000\000 \325!\001\001\000\000\000p\246\377\377\377\177\000\000̓\030\366\377\177\000\000 \325!\001\377\177\000\000\020M\333\003\000\000\000\000\200\246\377\377\377\177\000\000\000\000\000\000\000\000\360?\260\246\377\377\377\177\000\000\367l\027\366\377\177\000\000\b\330!\001\377\177\000\000\340CD\001\000\000\000\000\000\000\000\000\000\220u@\000\000\000\000\000X\213@\000\000\000\000\000\220u@\000\000\000\000\000Њ@Ц\377\377\377\177\000\000@\247\377\377\377\177\000\000\b\320R\370\376\177\000\000\b\322R\370\376\177\000\000\b\323R\370\376\177\000\000\b\324R\370\376\177\000\000\b\325R\370\361\000\000\000\070\251\272\001"..., q_for_alignment_1 = 4644776920376934400, q_for_alignment_2 = 345}}
      #7  0x00007ffff6052b8b in QTextLayout::nextCursorPosition (this=0x7fff05b228f0, oldPos=0, 
          mode=QTextLayout::SkipCharacters) at text/qtextlayout.cpp:686
              attributes = 0x0
              len = 0
      #8  0x00007ffff6086960 in QTextDocumentPrivate::nextCursorPosition (this=0x1baa840, position=3153, 
          mode=QTextLayout::SkipCharacters) at text/qtextdocument_p.cpp:1373
              it = {p = 0x1baa840, n = 96}
              start = 3153
              end = 3178
      #9  0x00007ffff60b43b8 in QTextCursorPrivate::movePosition (this=0x7fff01262d10, 
          op=QTextCursor::NextCharacter, mode=QTextCursor::KeepAnchor) at text/qtextcursor.cpp:543
              layout = 0x7fff05b228f0
              line = {index = 0, eng = 0x0}
              newPosition = 3153
              moved = false
              adjustX = true
              blockIt = {p = 0x1baa840, n = 96}
              visualMovement = false
              relativePos = 0
      #10 0x00007ffff60b5fb2 in QTextCursor::movePosition (this=0x7fffffffb210, op=QTextCursor::NextCharacter, 
          mode=QTextCursor::KeepAnchor, n=4) at text/qtextcursor.cpp:1255
              previousPosition = 3153
      #11 0x00007fffe4315ab9 in TextEditor::TabSettings::indentLine (this=0x239d6e0, block=..., newIndent=4, 
          padding=0) at ../../../../ide/src/plugins/texteditor/tabsettings.cpp:313
              text = {static null = {<No data fields>}, d = 0x7fff0065bfe0}
              oldBlockLength = 25
              indentString = {static null = {<No data fields>}, d = 0x7fff002627c0}
              cursor = {d = {d = 0x7fff01262d10}}
      #12 0x00007fffe23a3f79 in CppTools::CppQtStyleIndenter::indentBlock (this=0x3affd50, doc=0x8a86f0, 
          block=..., typedChar=..., tabSettings=...)
          at ../../../../ide/src/plugins/cpptools/cppqtstyleindenter.cpp:117
              codeFormatter = {<CppTools::CodeFormatter> = {_vptr.CodeFormatter = 0x7fffe268f310, 
                  static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x7fffe244bf00, 
                      data = 0x7fffe244c960, static_metacall = 0, relatedMetaObjects = 0x0, extradata = 0x0}}, 
                  m_beginState = {<QVector<CppTools::CodeFormatter::State>> = {
                      d = 0x7fff05a67900}, <No data fields>}, 
                  m_currentState = {<QVector<CppTools::CodeFormatter::State>> = {
                      d = 0x7fff05a67900}, <No data fields>}, 
                  m_newStates = {<QVector<CppTools::CodeFormatter::State>> = {
                      d = 0x7ffff5e7d500}, <No data fields>}, m_tokens = {{p = {static shared_null = {ref = {
                            atomic = {_q_value = -1}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, 
                        d = 0x7fff03955c80}, d = 0x7fff03955c80}}, m_currentLine = {
                    static null = {<No data fields>}, d = 0x7fff03740f10}, m_currentToken = {{flags = 0, f = {
                        kind = 0, newline = 0, whitespace = 0, joined = 0, expanded = 0, generated = 0, pad = 0, 
                        length = 0}}, offset = 0, {ptr = 0x0, literal = 0x0, number = 0x0, string = 0x0, 
                      identifier = 0x0, close_brace = 0, lineno = 0}}, m_tokenIndex = -19616, m_indentDepth = 4, 
                  m_paddingDepth = 0, m_tabSize = 4}, m_tabSettings = {
                  m_tabPolicy = TextEditor::TabSettings::SpacesOnlyTabPolicy, m_tabSize = 4, m_indentSize = 4, 
                  m_continuationAlignBehavior = TextEditor::TabSettings::ContinuationAlignWithIndent}, 
                m_styleSettings = {indentBlockBraces = false, indentBlockBody = true, indentClassBraces = false, 
                  indentEnumBraces = false, indentNamespaceBraces = false, indentNamespaceBody = false, 
                  indentAccessSpecifiers = false, indentDeclarationsRelativeToAccessSpecifiers = true, 
                  indentFunctionBody = true, indentFunctionBraces = false, indentSwitchLabels = false, 
                  indentStatementsRelativeToSwitchLabels = true, indentBlocksRelativeToSwitchLabels = false, 
                  indentControlFlowRelativeToSwitchLabels = true, 
                  extraPaddingForConditionsIfConfusingAlign = true, alignAssignments = false}}
              indent = 4
              padding = 0
      #13 0x00007fffe434bbbb in TextEditor::Indenter::reindent (this=0x3affd50, doc=0x8a86f0, cursor=..., 
          tabSettings=...) at ../../../../ide/src/plugins/texteditor/indenter.cpp:103
      ---Type <return> to continue, or q <return> to quit---
      No locals.
      #14 0x00007fffe42e7b4d in TextEditor::BaseTextEditorWidget::reindent (this=0x1d6ba60, doc=0x8a86f0, 
          cursor=...) at ../../../../ide/src/plugins/texteditor/basetexteditor.cpp:4777
      No locals.
      #15 0x00007fffe42d25fb in TextEditor::BaseTextEditorWidget::moveLineUpDown (this=0x1d6ba60, up=true)
          at ../../../../ide/src/plugins/texteditor/basetexteditor.cpp:1150
              cursor = {d = {d = 0x7fffebe60e50}}
              hasSelection = false
              affectedMarkers = {{p = {static shared_null = {ref = {atomic = {_q_value = -1}}, alloc = 0, 
                      begin = 0, end = 0, array = {0x0}}, d = 0x7ffff5e7d700}, d = 0x7ffff5e7d700}}
              nonAffectedMarkers = {{p = {static shared_null = {ref = {atomic = {_q_value = -1}}, alloc = 0, 
                      begin = 0, end = 0, array = {0x0}}, d = 0x7ffff5e7d700}, d = 0x7ffff5e7d700}}
              end = 3178
              move = {d = {d = 0x7fff01f79870}}
              text = {static null = {<No data fields>}, d = 0x7fffebda57f0}
              markerOffsets = {{p = {static shared_null = {ref = {atomic = {_q_value = -1}}, alloc = 0, begin = 0, 
                      end = 0, array = {0x0}}, d = 0x7ffff5e7d700}, d = 0x7ffff5e7d700}}
              start = 3153
      #16 0x00007fffe42d1ed9 in TextEditor::BaseTextEditorWidget::moveLineUp (this=0x1d6ba60)
          at ../../../../ide/src/plugins/texteditor/basetexteditor.cpp:1038
      No locals.
      #17 0x00007fffe430a5e2 in TextEditor::TextEditorActionHandler::moveLineUp (this=0x99ae90)
          at ../../../../ide/src/plugins/texteditor/texteditoractionhandler.cpp:625
      No locals.
      #18 0x00007fffe43c0c1c in TextEditor::TextEditorActionHandler::qt_static_metacall (_o=0x99ae90, 
          _c=QMetaObject::InvokeMetaMethod, _id=40, _a=0x7fffffffb870)
          at .moc/debug-shared/moc_texteditoractionhandler.cpp:363
              _t = 0x99ae90
      #19 0x00007ffff5a257e2 in QMetaObject::activate (sender=0x9a2710, signalOffset=3, local_signal_index=1, 
          argv=0x7fffffffb870) at kernel/qobject.cpp:3440
              receiverInSameThread = true
              sw = {receiver = 0x99ae90, previousSender = 0x0, currentSender = {sender = 0x9a2710, signal = 4, 
                  ref = 1}, switched = true}
              callFunction = 0x7fffe43c08b4 <TextEditor::TextEditorActionHandler::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>
              receiver = 0x99ae90
              method_relative = 40
              c = 0x9a3090
              last = 0x9a3090
              locker = {val = 140737319091400}
              connectionLists = {connectionLists = 0x9a2a00}
              list = 0x9a31a8
              signal_index = 4
              empty_argv = {0x0}
              currentThreadId = 0x7ffff7fc4740
              __PRETTY_FUNCTION__ = "static void QMetaObject::activate(QObject*, int, int, void**)"
      #20 0x00007ffff5a2510e in QMetaObject::activate (sender=0x9a2710, m=0x7ffff7944e40, local_signal_index=1, 
          argv=0x7fffffffb870) at kernel/qobject.cpp:3315
      

        Attachments

        For Gerrit Dashboard: QTCREATORBUG-7995
        # Subject Branch Project Status CR V

          Activity

            People

            Assignee:
            erikv Erik Verbruggen
            Reporter:
            dt Daniel Teske
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes