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

QTextControlPrivate::inputMethodEvent() crash

    XMLWordPrintable

Details

    • Bug
    • Resolution: Cannot Reproduce
    • P1: Critical
    • None
    • 4.7.1
    • GUI: Text handling
    • None
    • Windows XP.

    Description

      cursor().block().layout() returns null leading to crash. This occurs in context, where I have TextEdit QML element shown on top of PageStack (from qt-components). Inserting/removing text to editor may cause a page change. Page change related to removal of the last character from editor leads to condition where layout() is null. Call stack is provided below.

      void QTextControlPrivate::inputMethodEvent(QInputMethodEvent *e)
      {
      ..
      bool isGettingInput = !e->commitString().isEmpty()

      e->preeditString() != cursor.block().layout()->preeditAreaText()
      e->replacementLength() > 0;

      Call stack:
      0 QTextControlPrivate::inputMethodEvent qtextcontrol.cpp 1855 0x2c0218a
      1 QTextControl::processEvent qtextcontrol.cpp 944 0x2bfe662
      2 QTextControl::processEvent qtextcontrol.cpp 884 0x2bfe341
      3 QDeclarativeTextEdit::inputMethodEvent qdeclarativetextedit.cpp 1174 0x64f3dfa1
      4 QGraphicsItem::sceneEvent qgraphicsitem.cpp 6740 0x2f8f7aa
      5 QDeclarativeItem::sceneEvent qdeclarativeitem.cpp 2749 0x64f1cb9a
      6 QGraphicsScenePrivate::sendEvent qgraphicsscene.cpp 1207 0x2faac79
      7 QGraphicsScenePrivate::setFocusItemHelper qgraphicsscene.cpp 819 0x2fa9719
      8 QGraphicsItemPrivate::setFocusHelper qgraphicsitem.cpp 3303 0x2f873c1
      9 QGraphicsItemPrivate::setVisibleHelper qgraphicsitem.cpp 2368 0x2f852ae
      10 QGraphicsItemPrivate::setVisibleHelper qgraphicsitem.cpp 2340 0x2f85022
      11 QGraphicsItemPrivate::setVisibleHelper qgraphicsitem.cpp 2340 0x2f85022
      12 QGraphicsItemPrivate::setVisibleHelper qgraphicsitem.cpp 2340 0x2f85022
      13 QGraphicsItemPrivate::setVisibleHelper qgraphicsitem.cpp 2340 0x2f85022
      14 QGraphicsItem::setVisible qgraphicsitem.cpp 2434 0x2f85519
      15 QGraphicsObject::qt_metacall moc_qgraphicsitem.cpp 184 0x2f9b00f
      16 QDeclarativeItem::qt_metacall moc_qdeclarativeitem.cpp 179 0x64f1e177
      17 QDeclarativeVMEMetaObject::metaCall qdeclarativevmemetaobject.cpp 655 0x64f57775
      18 QMetaObject::metacall qmetaobject.cpp 235 0x6c44e3
      19 QDeclarativePropertyPrivate::write qdeclarativeproperty.cpp 978 0x64f6f719
      20 QDeclarativePropertyPrivate::writeValueProperty qdeclarativeproperty.cpp 919 0x64f6f149
      21 QDeclarativePropertyPrivate::write qdeclarativeproperty.cpp 1172 0x64f7018c
      22 QDeclarativeTransitionManager::transition qdeclarativetransitionmanager.cpp 151 0x64ed56e3
      23 QDeclarativeState::apply qdeclarativestate.cpp 707 0x64ed4fbc
      24 QDeclarativeStateGroupPrivate::setCurrentStateInternal qdeclarativestategroup.cpp 435 0x64ee399c
      25 QDeclarativeStateGroup::setState qdeclarativestategroup.cpp 251 0x64ee298d
      26 QDeclarativeItemPrivate::setState qdeclarativeitem.cpp 2611 0x64f1c39c
      27 QDeclarativeItem::qt_metacall moc_qdeclarativeitem.cpp 237 0x64f1e834
      28 QDeclarativeVMEMetaObject::metaCall qdeclarativevmemetaobject.cpp 655 0x64f57775
      29 QMetaObject::metacall qmetaobject.cpp 235 0x6c44e3
      30 QDeclarativePropertyPrivate::write qdeclarativeproperty.cpp 978 0x64f6f719
      31 QDeclarativeObjectScriptClass::setProperty qdeclarativeobjectscriptclass.cpp 382 0x64fdd21b
      32 QDeclarativeContextScriptClass::setProperty qdeclarativecontextscriptclass.cpp 332 0x64fe177b
      33 QScript::DeclarativeObjectDelegate::put qscriptdeclarativeobject.cpp 99 0xd8954bb
      34 QScriptObject::put qscriptobject.cpp 80 0xd885715
      35 QTJSC::JSValue::put JSObject.h 658 0xd8ea36b
      36 cti_op_put_by_id JITStubs.cpp 1243 0xd7f9123
      37 ?? 0 0x1b45228e
      38 QTJSC::JITCode::execute JITCode.h 79 0xd8e9731
      39 QTJSC::Interpreter::execute Interpreter.cpp 716 0xd7d9835
      40 QTJSC::JSFunction::call JSFunction.cpp 122 0xd821c2a
      41 QTJSC::call CallData.cpp 62 0xd80ee9e
      42 QScriptValue::call qscriptvalue.cpp 1605 0xd882992
      43 QDeclarativeQtScriptExpression::eval qdeclarativeexpression.cpp 479 0x64f685b5
      44 QDeclarativeQtScriptExpression::scriptValue qdeclarativeexpression.cpp 434 0x64f6834d
      45 QDeclarativeExpressionPrivate::scriptValue qdeclarativeexpression.cpp 614 0x64f68f28
      46 QDeclarativeExpressionPrivate::value qdeclarativeexpression.cpp 628 0x64f68ff2
      47 QDeclarativeBoundSignal::qt_metacall qdeclarativeboundsignal.cpp 177 0x64f94725
      48 QMetaObject::metacall qmetaobject.cpp 237 0x6c450c
      49 QMetaObject::activate qobject.cpp 3272 0x6d4c7a
      50 PhoneDialerDeclarative::numberEntryTextChanged moc_phonedialerdeclarative.cpp 152 0x6c0078c7
      51 PhoneDialerDeclarative::qt_metacall moc_phonedialerdeclarative.cpp 100 0x6c007640
      52 QMetaObject::metacall qmetaobject.cpp 237 0x6c450c
      53 QMetaObject::activate qobject.cpp 3272 0x6d4c7a
      54 PhoneDialer::numberEntryTextChanged moc_phonedialer.cpp 93 0x6b809df5
      55 PhoneDialer::setNumberEntryText phonedialer.cpp 59 0x6b803a51
      56 PhoneDialerDeclarative::setNumberEntryText phonedialerdeclarative.cpp 105 0x6c004f6b
      57 PhoneDialerDeclarative::qt_metacall moc_phonedialerdeclarative.cpp 123 0x6c007815
      58 QMetaObject::metacall qmetaobject.cpp 237 0x6c450c
      59 QDeclarativePropertyPrivate::write qdeclarativeproperty.cpp 978 0x64f6f719
      60 QDeclarativePropertyPrivate::writeValueProperty qdeclarativeproperty.cpp 919 0x64f6f149
      61 QDeclarativePropertyPrivate::write qdeclarativeproperty.cpp 1172 0x64f7018c
      62 QDeclarativeProperty::write qdeclarativeproperty.cpp 1096 0x64f6ff6a
      63 QDeclarativeBind::eval qdeclarativebind.cpp 210 0x64eefebc
      64 QDeclarativeBind::setValue qdeclarativebind.cpp 187 0x64eefdd3
      65 QDeclarativeBind::qt_metacall moc_qdeclarativebind_p.cpp 95 0x6501831c
      66 QMetaObject::metacall qmetaobject.cpp 237 0x6c450c
      67 QDeclarativePropertyPrivate::write qdeclarativeproperty.cpp 983 0x64f6f78b
      68 QDeclarativePropertyPrivate::writeValueProperty qdeclarativeproperty.cpp 919 0x64f6f149
      69 QDeclarativePropertyPrivate::write qdeclarativeproperty.cpp 1172 0x64f7018c
      70 QDeclarativeBinding::update qdeclarativebinding.cpp 206 0x64f6abc6
      71 QDeclarativeBinding::update qdeclarativebinding_p.h 162 0x65069bc3
      72 QDeclarativeBindingPrivate::emitValueChanged qdeclarativebinding.cpp 249 0x64f6b14b
      73 QDeclarativeExpressionPrivate::_q_notify qdeclarativeexpression.cpp 761 0x64f6927c
      74 QDeclarativeExpression::qt_metacall moc_qdeclarativeexpression.cpp 77 0x64f6960a
      75 QDeclarativeBinding::qt_metacall moc_qdeclarativebinding_p.cpp 69 0x65027bf2
      76 QMetaObject::metacall qmetaobject.cpp 237 0x6c450c
      77 QMetaObject::activate qobject.cpp 3272 0x6d4c7a
      78 QDeclarativeTextEdit::textChanged moc_qdeclarativetextedit_p.cpp 349 0x6502473e
      79 QDeclarativeTextEdit::q_textChanged qdeclarativetextedit.cpp 1281 0x64f3e747
      80 QDeclarativeTextEdit::qt_metacall moc_qdeclarativetextedit_p.cpp 260 0x65024040
      81 QMetaObject::metacall qmetaobject.cpp 237 0x6c450c
      82 QMetaObject::activate qobject.cpp 3272 0x6d4c7a
      83 QTextControl::textChanged moc_qtextcontrol_p.cpp 241 0x2c09361
      84 QTextControl::qt_metacall moc_qtextcontrol_p.cpp 154 0x2c08d44
      85 QMetaObject::metacall qmetaobject.cpp 237 0x6c450c
      86 QMetaObject::activate qobject.cpp 3272 0x6d4c7a
      87 QTextDocument::contentsChanged moc_qtextdocument.cpp 194 0x3015d0f
      88 QTextDocumentPrivate::contentsChanged qtextdocument_p.cpp 1629 0x2c37111
      89 QTextDocumentPrivate::finishEdit qtextdocument_p.cpp 1242 0x2c359d4
      90 QTextDocumentPrivate::move qtextdocument_p.cpp 666 0x2c33510
      91 QTextDocumentPrivate::remove qtextdocument_p.cpp 674 0x2c3356a
      92 QTextCursorPrivate::remove qtextcursor.cpp 175 0x2c502fa
      93 QTextCursor::deletePreviousChar qtextcursor.cpp 1511 0x2c547ac
      94 QTextControlPrivate::keyPressEvent qtextcontrol.cpp 1201 0x2bff613
      95 QTextControl::processEvent qtextcontrol.cpp 924 0x2bfe421
      96 QTextControl::processEvent qtextcontrol.cpp 884 0x2bfe341
      97 QDeclarativeTextEdit::keyPressEvent qdeclarativetextedit.cpp 970 0x64f3d679
      98 QGraphicsItem::sceneEvent qgraphicsitem.cpp 6733 0x2f8f76e
      99 QDeclarativeItem::sceneEvent qdeclarativeitem.cpp 2746 0x64f1cb81
      100 QGraphicsScenePrivate::sendEvent qgraphicsscene.cpp 1207 0x2faac79
      101 QGraphicsScene::keyPressEvent qgraphicsscene.cpp 3986 0x2fb2c70
      102 QDeclarativeScene::keyPressEvent qdeclarativeview.cpp 98 0x64ec1f02
      103 QGraphicsScene::event qgraphicsscene.cpp 3414 0x2fb11ae
      104 QApplicationPrivate::notify_helper qapplication.cpp 4445 0x2a0bd30
      105 QApplication::notify qapplication.cpp 3845 0x2a09682
      106 QCoreApplication::notifyInternal qcoreapplication.cpp 732 0x6bfa52
      107 QCoreApplication::sendEvent qcoreapplication.h 215 0x3083c9e
      108 QGraphicsView::keyPressEvent qgraphicsview.cpp 3071 0x2fd1202
      109 QWidget::event qwidget.cpp 8235 0x2a56a20
      110 QFrame::event qframe.cpp 557 0x2dd4200
      111 QAbstractScrollArea::event qabstractscrollarea.cpp 996 0x2e61b20
      112 QGraphicsView::event qgraphicsview.cpp 2741 0x2fd0089
      113 QApplicationPrivate::notify_helper qapplication.cpp 4445 0x2a0bd30
      114 QApplication::notify qapplication.cpp 3904 0x2a099d7
      115 QCoreApplication::notifyInternal qcoreapplication.cpp 732 0x6bfa52
      116 QCoreApplication::sendEvent qcoreapplication.h 215 0x726b7c
      117 QCoreApplicationPrivate::sendPostedEvents qcoreapplication.cpp 1373 0x6c0afd
      118 qt_internal_proc qeventdispatcher_win.cpp 506 0x6e2dea

      Attachments

        Issue Links

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

          Activity

            People

              esabraha Eskil Abrahamsen Blomfeldt
              jkahkonen Juha Kähkönen
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes