Bug 200707

Summary: KWrite freezes on long lines for example when viewing http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js
Product: [Applications] kate Reporter: Anne-Marie Mahfouf <annma>
Component: kwriteAssignee: KWrite Developers <kwrite-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Anne-Marie Mahfouf 2009-07-18 21:56:50 UTC
Version:           4.2.96 (KDE 4.2.96 (KDE 4.3 RC2)) (using 4.2.96 (KDE 4.2.96 (KDE 4.3 RC2)), compiled sources)
Compiler:          gcc
OS:                Linux (i686) release 2.6.27-desktop-0.rc8.2mnb

When opening http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js
in Konqueror, Konqueror asks to view the file in KWrite but then KWrite freezes.
Comment 1 Anne-Marie Mahfouf 2009-07-18 22:00:57 UTC
Konsole output

-----------------------
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::readGlobalKeywordConfig: readGlobalKeywordConfig:END                                                                                     
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::readGlobalKeywordConfig: delimiterCharacters are:  "      .():!+,-<=>%&*/;?[]^{|}~\"                                                     
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::readWordWrapConfig: readWordWrapConfig:BEGIN                                                                                             
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::readWordWrapConfig: Found global keyword config                                                                                          
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::readWordWrapConfig: word wrap deliminators are  "         .():!+,-<=>%&*/;?[]^{|}~\"                                                     
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::readWordWrapConfig: readWordWrapConfig:END
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::readFoldingConfig: readfoldignConfig:BEGIN
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::readFoldingConfig: readfoldingConfig:END  
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::readFoldingConfig: ############################ use indent for fold are:  false                                                          
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::createContextNameList: creatingContextNameList:BEGIN                                                                                     
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::createContextNameList: creatingContextNameList:END                                                                                       
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::addToContextList: Parsing Context structure                                                                                              
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::addToContextList: Found a context in file, building structure now                                                                        
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::addToContextList: INDEX:  11  LENGTH  11  
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::makeContextList: **************** Outer loop in make ContextList                                                                         
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::makeContextList: **************** Hl List count: 2                                                                                       
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::makeContextList: Unresolved contexts, which need attention:  2                                                                           
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::makeContextList: Context  "Alerts:"  is unresolved                                                                                       
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::makeContextList: Looking up context0 for ruleset  "Alerts:"                                                                              
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::makeContextList: Context  "Alerts:"  is unresolved                                                                                       
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::makeContextList: Looking up context0 for ruleset  "Alerts:"                                                                              
konqueror(29613)/Kate (XML/Syntax) KateHighlighting::handleKateHlIncludeRules: KateHlIncludeRules, which need attention:  2                                                                   
konqueror(29613)/Kate KateCodeFoldingTree::addNodeToRemoveList: marking for deletion: 0x88e2900
konqueror(29613)/Kate KateCodeFoldingTree::addNodeToRemoveList: marking for deletion: 0x8abb398
konqueror(29613)/Kate KateCodeFoldingTree::addNodeToRemoveList: marking for deletion: 0x85702d8
konqueror(29613)/Kate KateCodeFoldingTree::addNodeToRemoveList: marking for deletion: 0x8abb398
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HIGHLIGHTED END --- NEED HL, LINESTART:  0  LINEEND:  18                                                                            
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HL UNTIL LINE:  0  MAX:  0           
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HL DYN COUNT:  0  MAX:  512          
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HIGHLIGHTED END --- NEED HL, LINESTART:  18  LINEEND:  18
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HL UNTIL LINE:  18  MAX:  18
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HL DYN COUNT:  0  MAX:  512
konqueror(29613)/Kate (Document) KateView::updateView: KateView::updateView
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HIGHLIGHTED END --- NEED HL, LINESTART:  18  LINEEND:  18
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HL UNTIL LINE:  18  MAX:  18
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HL DYN COUNT:  0  MAX:  512
[Thread 0xb0303b90 (LWP 29623) exited]
konqueror(29613)/Kate (Document) KateView::updateView: KateView::updateView
konqueror(29613)/Kate (Code Completion) KateCompletionWidget::abortCompletion:
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HIGHLIGHTED END --- NEED HL, LINESTART:  18  LINEEND:  18
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HL UNTIL LINE:  18  MAX:  18
konqueror(29613)/Kate (Document) KateBuffer::doHighlight: HL DYN COUNT:  0  MAX:  512
Comment 2 Anne-Marie Mahfouf 2009-07-18 22:03:08 UTC
Backtrace

#0  QTextEngine::format (this=0x8a796f8, si=0x8f5e8d8) at text/qtextengine.cpp:2159
#1  0xb6d68f5f in QTextEngine::fontEngine (this=0x8a796f8, si=@0x8f5e8d8, ascent=0x8f5e8e8,
    descent=0x8f5e8e4) at text/qtextengine.cpp:1738
#2  0xb6d6a128 in QTextEngine::shapeTextWithHarfbuzz (this=0x8a796f8, item=4254)
    at text/qtextengine.cpp:1122
#3  0xb6d6ad7f in QTextEngine::shapeText (this=0x8a796f8, item=4254)
    at text/qtextengine.cpp:874
#4  0xb6d6b30d in QTextEngine::shape (this=0x8a796f8, item=4254) at text/qtextengine.cpp:1356
#5  0xb6d73be6 in QTextLine::layout_helper (this=0xbff97908, maxGlyphs=2147483647)
    at text/qtextlayout.cpp:1676
#6  0xb6d74a24 in QTextLine::setNumColumns (this=0xbff97908, numColumns=2147483647)
    at text/qtextlayout.cpp:1566
#7  0xb6d74d99 in QTextLayout::createLine (this=0x88220e8) at text/qtextlayout.cpp:764
#8  0xaf3c0d76 in KateRenderer::layoutLine (this=0x8d57eb8, lineLayout={d = 0xbff97a58},
    maxwidth=-1, cacheLayout=true)
    at /usr/local/branch-src/kdelibs/kate/render/katerenderer.cpp:815
#9  0xaf3c9cb2 in KateLayoutCache::line (this=0x8d53038, realLine=18, virtualLine=18)
    at /usr/local/branch-src/kdelibs/kate/render/katelayoutcache.cpp:309
#10 0xaf3cae57 in KateLayoutCache::updateViewCache (this=0x8d53038, startPos=@0x8d548d4,
    newViewLineCount=28, viewLinesScrolled=0)
    at /usr/local/branch-src/kdelibs/kate/render/katelayoutcache.cpp:262
#11 0xaf418904 in KateViewInternal::doUpdateView (this=0x8d547e8, changed=false,
    viewLinesScrolled=0) at /usr/local/branch-src/kdelibs/kate/view/kateviewinternal.cpp:592
#12 0xaf4191b2 in KateViewInternal::updateView (this=0x8d547e8, changed=false,
    viewLinesScrolled=0) at /usr/local/branch-src/kdelibs/kate/view/kateviewinternal.cpp:568
#13 0xaf41fa3c in KateViewInternal::resizeEvent (this=0x8d547e8, e=0xbff982b4)
    at /usr/local/branch-src/kdelibs/kate/view/kateviewinternal.cpp:3093
#14 0xb6b8c590 in QWidget::event (this=0x8d547e8, event=0xbff982b4) at kernel/qwidget.cpp:7695
#15 0xb6b2ad3d in QApplicationPrivate::notify_helper (this=0x83e6b70, receiver=0x8d547e8,
    e=0xbff982b4) at kernel/qapplication.cpp:4056
#16 0xb6b2cc56 in QApplication::notify (this=0xbff99000, receiver=0x8d547e8, e=0xbff982b4)
    at kernel/qapplication.cpp:4021
#17 0xb797a90d in KApplication::notify (this=0xbff99000, receiver=0x8d547e8, event=0xbff982b4)
    at /usr/local/branch-src/kdelibs/kdeui/kernel/kapplication.cpp:302
#18 0xb743e455 in QCoreApplication::notifyInternal (this=0xbff99000, receiver=0x8d547e8,
    event=0xbff982b4) at kernel/qcoreapplication.cpp:606
#19 0xb7441fe3 in QCoreApplication::sendEvent (receiver=0x8d547e8, event=0xbff982b4)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
#20 0xb6bccdf9 in QWidgetPrivate::setGeometry_sys (this=0x8d54a08, x=28, y=3, w=1125, h=544,
    isMove=true) at kernel/qwidget_x11.cpp:2439
#21 0xb6b88726 in QWidget::setGeometry (this=0x8d547e8, r=@0xbff98464)
    at kernel/qwidget.cpp:6232
#22 0xb6b6106f in QWidget::setGeometry (this=0x8d547e8, ax=28, ay=3, aw=1125, ah=544)
    at ../../include/QtGui/../../src/gui/kernel/qwidget.h:970
#23 0xb6b64cde in QWidgetItem::setGeometry (this=0x8da0968, rect=@0xbff9864c)
    at kernel/qlayoutitem.cpp:491
#24 0xb6b3d1c8 in QBoxLayout::setGeometry (this=0x8da0690, r=@0xbff986e8)
    at kernel/qboxlayout.cpp:860
#25 0xb6b5ea0f in QLayoutPrivate::doResize (this=0x8da06a8, r=@0xbff9878c)
    at kernel/qlayout.cpp:637
#26 0xb6b5ef62 in QLayout::activate (this=0x8da0690) at kernel/qlayout.cpp:1215
#27 0xb6b5f800 in QLayout::widgetEvent (this=0x8da0690, e=0x8dc24b0) at kernel/qlayout.cpp:708
#28 0xb6b2ad01 in QApplicationPrivate::notify_helper (this=0x83e6b70, receiver=0x8da0770,
    e=0x8dc24b0) at kernel/qapplication.cpp:4047
#29 0xb6b2cc56 in QApplication::notify (this=0xbff99000, receiver=0x8da0770, e=0x8dc24b0)
    at kernel/qapplication.cpp:4021
#30 0xb797a90d in KApplication::notify (this=0xbff99000, receiver=0x8da0770, event=0x8dc24b0)
    at /usr/local/branch-src/kdelibs/kdeui/kernel/kapplication.cpp:302
#31 0xb743e455 in QCoreApplication::notifyInternal (this=0xbff99000, receiver=0x8da0770,
    event=0x8dc24b0) at kernel/qcoreapplication.cpp:606
#32 0xb7441fe3 in QCoreApplication::sendEvent (receiver=0x8da0770, event=0x8dc24b0)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
#33 0xb743e93d in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0,
    data=0x83ceb40) at kernel/qcoreapplication.cpp:1244
#34 0xb743eaf9 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0)
    at kernel/qcoreapplication.cpp:1140
#35 0xb746ecce in QCoreApplication::sendPostedEvents ()
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218
#36 0xb746ded8 in postEventSourceDispatch (s=0x83e8ed8)
    at kernel/qeventdispatcher_glib.cpp:210
#37 0xb637e7ca in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#38 0xb6381ee8 in ?? () from /usr/lib/libglib-2.0.so.0
#39 0xb63820a8 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#40 0xb746d25a in QEventDispatcherGlib::processEvents (this=0x83e6b30, flags=
      {i = -1074164200}) at kernel/qeventdispatcher_glib.cpp:327
#41 0xb6bd8914 in QGuiEventDispatcherGlib::processEvents (this=0x83e6b30, flags=
      {i = -1074164152}) at kernel/qguieventdispatcher_glib.cpp:202
#42 0xb743b470 in QEventLoop::processEvents (this=0xbff98ed0, flags={i = -1074164084})
    at kernel/qeventloop.cpp:149
#43 0xb743b6e1 in QEventLoop::exec (this=0xbff98ed0, flags={i = -1074164008})
    at kernel/qeventloop.cpp:197
#44 0xb743ec2d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#45 0xb6b2aa56 in QApplication::exec () at kernel/qapplication.cpp:3525
#46 0xb80583af in kdemain (argc=1, argv=0xbff993e4)
    at /usr/local/branch-src/kdebase/apps/konqueror/src/konqmain.cpp:257
#47 0x080486d6 in main (argc=145061960, argv=0x8a57860)
    at /home/branch/build/kdebase/apps/konqueror/src/konqueror_dummy.cpp:3
Comment 3 Anne-Marie Mahfouf 2009-07-18 22:04:03 UTC
GEdit reads the file correctly and if I then save it from GEdit and try opening it in KWrite it freezes the same.
Comment 4 Dominik Haumann 2009-07-19 00:34:51 UTC
not easy or maybe even impossible to fix. see #169549 for more details.

*** This bug has been marked as a duplicate of bug 169549 ***