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

Crash in declarative textedit

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • None
    • 5.1.0 Beta 1, 5.1.1, 5.2.0
    • None
    • Linux (openSUSE 12.3, Debian testing), 64bits

    Description

      We (Plasma team) are running into a crasher in qquicktextedit.cpp, which came up somewhere between 7148a79775e31eb (last GOOD one) and rev 5677d722c36b6a5c (first BAD one). The commit itself looks harmless, but the crash could come from somewhere else. This ASSERT is being hit:

      plasma-shell(14419)/default qt_assert: ASSERT: "node->parent() == this" in file scenegraph/coreapi/qsgnode.cpp, line 541

      gdb reveals this backtrace (generated from c704226b681):

      #0 0x00007fffee79a3d5 in raise () from /lib64/libc.so.6
      #1 0x00007fffee79b858 in abort () from /lib64/libc.so.6
      #2 0x00007fffef3c69b9 in qt_message_fatal (context=..., message=...) at global/qlogging.cpp:938
      #3 0x00007fffef3c464a in QMessageLogger::fatal (this=0x7fffbe77d540, msg=0x7fffef69e3d8 "ASSERT: \"%s\" in file %s, line %d") at global/qlogging.cpp:360
      #4 0x00007fffef3bfef8 in qt_assert (assertion=0x7ffff7aa029e "node->parent() == this", file=0x7ffff7aa00d8 "scenegraph/coreapi/qsgnode.cpp", line=541) at global/qglobal.cpp:1992
      #5 0x00007ffff78aa55c in QSGNode::removeChildNode (this=0x7fffb83fc5a0, node=0x7fffb847c4d0) at scenegraph/coreapi/qsgnode.cpp:541
      #6 0x00007ffff798bc7b in QQuickTextEdit::updatePaintNode (this=0xe26ee0, oldNode=0x0, updatePaintNodeData=0x795d78) at items/qquicktextedit.cpp:1740
      #7 0x00007ffff791861b in QQuickWindowPrivate::updateDirtyNode (this=0x795be0, item=0xe26ee0) at items/qquickwindow.cpp:2417
      #8 0x00007ffff7917637 in QQuickWindowPrivate::updateDirtyNodes (this=0x795be0) at items/qquickwindow.cpp:2238
      #9 0x00007ffff790f47d in QQuickWindowPrivate::syncSceneGraph (this=0x795be0) at items/qquickwindow.cpp:298
      #10 0x00007ffff78e60da in QSGRenderThread::sync (this=0x78dcb0) at scenegraph/qsgthreadedrenderloop.cpp:529
      #11 0x00007ffff78e6221 in QSGRenderThread::syncAndRender (this=0x78dcb0) at scenegraph/qsgthreadedrenderloop.cpp:563
      #12 0x00007ffff78e665c in QSGRenderThread::run (this=0x78dcb0) at scenegraph/qsgthreadedrenderloop.cpp:650
      #13 0x00007fffef3d8ee1 in QThreadPrivate::start (arg=0x78dcb0) at thread/qthread_unix.cpp:339
      #14 0x00007fffee550e0f in start_thread () from /lib64/libpthread.so.0
      #15 0x00007fffee84d7dd in clone () from /lib64/libc.so.6

      Attachments

        1. testcase_qtbug.pro
          0.2 kB
        2. test.qml
          0.2 kB
        3. main.cpp
          1 kB
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            elproxy Pierre Rossi
            sebas Sebastian Kügler
            Votes:
            5 Vote for this issue
            Watchers:
            13 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes