<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>100963</bug_id>
          
          <creation_ts>2005-03-06 12:47:59 +0000</creation_ts>
          <short_desc>Konqueror hangs when typing &quot;)&quot; char in web forms</short_desc>
          <delta_ts>2005-03-08 15:23:36 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>2</classification_id>
          <classification>Applications</classification>
          <product>konqueror</product>
          <component>kjs</component>
          <version>unspecified</version>
          <rep_platform>Gentoo Packages</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>NOR</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Gleb Litvjak">blaster999</reporter>
          <assigned_to name="Konqueror Bugs">konqueror-bugs-null</assigned_to>
          <cc>faure</cc>
    
    <cc>jan.toenjes</cc>
          
          <cf_commitlink></cf_commitlink>
          <cf_versionfixedin></cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>321511</commentid>
    <comment_count>0</comment_count>
    <who name="Gleb Litvjak">blaster999</who>
    <bug_when>2005-03-06 12:47:59 +0000</bug_when>
    <thetext>Version:            (using KDE KDE 3.4.0)
Installed from:    Gentoo Packages
Compiler:          gcc (GCC) 3.4.3 20050110 (Gentoo Linux 3.4.3.20050110, ssp-3.4.3.20050110-0, pie-8.7.7) 
OS:                Linux

When I try to enter &quot;()&quot; in the big text field here: http://www.editorial.en.tele2.lv/?page=t2i_sendsms konqueror freezes and eats all CPU. I&apos;ve also observed some strange behaviour with &quot;)&quot; there: when I enter just &quot;)&quot; without &quot;(&quot;, everything seems fine, but if I press leftarrow to move the text cursor back, konqueror freezes for a couple of seconds. If I type &quot;(&quot; before &quot;)&quot;, konqueror freezes permanently. The same thing happens here: http://www.lmt.lv/lv/index.php?pageid=3005001006
This didn&apos;t happen in kde 3.3.2


I think it is connected to some javascript checking routines performed on both pages.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>321580</commentid>
    <comment_count>1</comment_count>
    <who name="Thiago Macieira">thiago</who>
    <bug_when>2005-03-06 17:59:09 +0000</bug_when>
    <thetext>Freeze confirmed. JS is at fault here.

I&apos;m trying to get a backtrace... hold on

(gdb) bt
#0  KJS::NamedTagLengthDeterminer::operator() (this=0xbfd0e6a0, start=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_html.cpp:185
#1  0xb588b2be in KJS::NamedTagLengthDeterminer::operator() (this=0xbfd0e6a0, start=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_html.cpp:192
#2  0xb588b2be in KJS::NamedTagLengthDeterminer::operator() (this=0xbfd0e6a0, start=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_html.cpp:192
#3  0xb588b2be in KJS::NamedTagLengthDeterminer::operator() (this=0xbfd0e6a0, start=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_html.cpp:192
#4  0xb588b2be in KJS::NamedTagLengthDeterminer::operator() (this=0xbfd0e6a0, start=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_html.cpp:192
#5  0xb588b2be in KJS::NamedTagLengthDeterminer::operator() (this=0xbfd0e6a0, start=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_html.cpp:192
#6  0xb588b2be in KJS::NamedTagLengthDeterminer::operator() (this=0xbfd0e6a0, start=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_html.cpp:192
#7  0xb588b2be in KJS::NamedTagLengthDeterminer::operator() (this=0xbfd0e6a0, start=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_html.cpp:192
#8  0xb588b2be in KJS::NamedTagLengthDeterminer::operator() (this=0xbfd0e6a0, start=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_html.cpp:192
#9  0xb588b5db in KJS::HTMLDocument::hasProperty (this=0x84164c8, exec=0xbfd0eb60, p=@0x8612abc) at kjs_html.h:253
#10 0xb561168d in KJS::ResolveNode::evaluateReference (this=0x3, exec=0xbfd0eb60) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:380
#11 0xb56134c2 in KJS::FunctionCallNode::evaluate (this=0x85efca0, exec=0xbfd0eb60) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:809
#12 0xb5618203 in KJS::ExprStatementNode::execute (this=0x86395b0, exec=0xbfd0eb60) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:1953
#13 0xb561ebbe in KJS::SourceElementsNode::execute (this=0x8600958, exec=0xbfd0eb60) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:3067
#14 0xb561800d in KJS::BlockNode::execute (this=0x85d68f0, exec=0xbfd0eb60) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:1915
#15 0xb561e0f9 in KJS::FunctionBodyNode::execute (this=0x85d68f0, exec=0xbfd0eb60) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:2919
#16 0xb5645e6c in KJS::DeclaredFunctionImp::execute (this=0x3, exec=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/kjs/function.cpp:579
#17 0xb564533c in KJS::FunctionImp::call (this=0x858f8a8, exec=0x0, thisObj=@0x3, args=@0xbfd0ed10) at /home/thiago/programs/src/kde/kdelibs/kjs/function.cpp:354
#18 0xb564c749 in KJS::Object::call (this=0xbfd0e6a0, exec=0x8441b48, thisObj=@0xbfd0e6a0, args=@0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/kjs/object.cpp:70
#19 0xb58ee287 in KJS::JSEventListener::handleEvent (this=0x8552568, evt=@0xbfd0edb0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_events.cpp:109
#20 0xb58ee5cf in KJS::JSLazyEventListener::handleEvent (this=0x8552568, evt=@0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_events.cpp:160
#21 0xb5778e58 in DOM::NodeImpl::handleLocalEvents (this=0x85529b8, evt=0x8861428, useCapture=false) at /home/thiago/programs/src/kde/kdelibs/khtml/xml/dom_nodeimpl.cpp:652
#22 0xb5778ff3 in DOM::NodeImpl::dispatchGenericEvent (this=0x85527d0, evt=0x8861428) at qptrlist.h:174
#23 0xb5779425 in DOM::NodeImpl::dispatchEvent (this=0x85527d0, evt=0x8861428, exceptioncode=@0xbfd0e6a0, tempEvent=true) at /home/thiago/programs/src/kde/kdelibs/khtml/xml/dom_nodeimpl.cpp:402
#24 0xb577a7a1 in DOM::NodeImpl::dispatchHTMLEvent (this=0xbfd0e6a0, _id=-1076828512, canBubbleArg=true, cancelableArg=false) at /home/thiago/programs/src/kde/kdelibs/khtml/xml/dom_nodeimpl.cpp:483
#25 0xb57b1a95 in DOM::HTMLGenericFormElementImpl::onChange (this=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/html/html_formimpl.cpp:883
#26 0xb57b4be0 in DOM::HTMLTextAreaElementImpl::value (this=0x85527d0) at /home/thiago/programs/src/kde/kdelibs/khtml/html/html_formimpl.cpp:2466
#27 0xb593083e in DOM::HTMLTextAreaElement::value (this=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/dom/html_form.cpp:1030
#28 0xb58a6a25 in KJS::HTMLElement::getValueProperty (this=0x85e6208, exec=0xbfd0fef0, token=104) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_html.cpp:1398
#29 0xb58b12b4 in KJS::HTMLElement::tryGet (this=0x85e6208, exec=0xbfd0fef0, propertyName=@0xbfd0f970) at kjs_binding.h:189
#30 0xb586f000 in KJS::DOMObject::get (this=0xbfd0e6a0, exec=0xbfd0fef0, p=@0x3) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_binding.cpp:50
#31 0xb5652711 in KJS::Reference::getValue (this=0xbfd0f960, exec=0xbfd0fef0) at /home/thiago/programs/src/kde/kdelibs/kjs/reference.cpp:143
#32 0xb5610892 in KJS::Node::evaluate (this=0xbfd0e6a0, exec=0xbfd0fef0) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:122
#33 0xb561287a in KJS::AccessorNode2::evaluateReference (this=0x852fd88, exec=0xbfd0fef0) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:648
#34 0xb561087c in KJS::Node::evaluate (this=0xbfd0e6a0, exec=0xbfd0fef0) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:122
#35 0xb5615672 in KJS::RelationalNode::evaluate (this=0x852fdc8, exec=0xbfd0fef0) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:1317
#36 0xb5610903 in KJS::Node::toBoolean (this=0xbfd0e6a0, exec=0xbfd0fef0) at value.h:218
#37 0xb561849e in KJS::IfNode::execute (this=0x854f4b8, exec=0xbfd0fef0) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:1989
#38 0xb561ebbe in KJS::SourceElementsNode::execute (this=0x854f4f0, exec=0xbfd0fef0) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:3067
#39 0xb561800d in KJS::BlockNode::execute (this=0x854f710, exec=0xbfd0fef0) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:1915

(More stack frames follow...)

#16279 0xb564c749 in KJS::Object::call (this=0xbfd0e6a0, exec=0xbfffdc40, thisObj=@0xbfd0e6a0, args=@0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/kjs/object.cpp:70
#16280 0xb56138d4 in KJS::FunctionCallNode::evaluate (this=0x0, exec=0xbfffdc40) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:850
#16281 0xb5618203 in KJS::ExprStatementNode::execute (this=0x842fbd8, exec=0xbfffdc40) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:1953
#16282 0xb561ebbe in KJS::SourceElementsNode::execute (this=0x8620fc8, exec=0xbfffdc40) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:3067
#16283 0xb561800d in KJS::BlockNode::execute (this=0x819c0f8, exec=0xbfffdc40) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:1915
#16284 0xb561e0f9 in KJS::FunctionBodyNode::execute (this=0x819c0f8, exec=0xbfffdc40) at /home/thiago/programs/src/kde/kdelibs/kjs/nodes.cpp:2919
#16285 0xb5645e6c in KJS::DeclaredFunctionImp::execute (this=0x3, exec=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/kjs/function.cpp:579
#16286 0xb564533c in KJS::FunctionImp::call (this=0x8639968, exec=0x0, thisObj=@0x3, args=@0xbfffddf0) at /home/thiago/programs/src/kde/kdelibs/kjs/function.cpp:354
#16287 0xb564c749 in KJS::Object::call (this=0xbfd0e6a0, exec=0x8441b48, thisObj=@0xbfd0e6a0, args=@0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/kjs/object.cpp:70
#16288 0xb58ee287 in KJS::JSEventListener::handleEvent (this=0x8552d28, evt=@0xbfffde90) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_events.cpp:109
#16289 0xb58ee5cf in KJS::JSLazyEventListener::handleEvent (this=0x8552d28, evt=@0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/khtml/ecma/kjs_events.cpp:160
#16290 0xb5778e58 in DOM::NodeImpl::handleLocalEvents (this=0x8552c90, evt=0x8615910, useCapture=false) at /home/thiago/programs/src/kde/kdelibs/khtml/xml/dom_nodeimpl.cpp:652
#16291 0xb5778ff3 in DOM::NodeImpl::dispatchGenericEvent (this=0x85527d0, evt=0x8615910) at qptrlist.h:174
#16292 0xb5779425 in DOM::NodeImpl::dispatchEvent (this=0x85527d0, evt=0x8615910, exceptioncode=@0xbfd0e6a0, tempEvent=true) at /home/thiago/programs/src/kde/kdelibs/khtml/xml/dom_nodeimpl.cpp:402
#16293 0xb5779b66 in DOM::NodeImpl::dispatchKeyEvent (this=0x85527d0, key=0xbfd0e6a0, keypress=false) at /home/thiago/programs/src/kde/kdelibs/khtml/xml/dom_nodeimpl.cpp:633
#16294 0xb56f8f51 in KHTMLView::dispatchKeyEventHelper (this=0x8477a48, _ke=0xbfffe750, keypress=false) at /home/thiago/programs/src/kde/kdelibs/khtml/khtmlview.cpp:1331
#16295 0xb56f9147 in KHTMLView::dispatchKeyEvent (this=0x8477a48, _ke=0xbfffe750) at /home/thiago/programs/src/kde/kdelibs/khtml/khtmlview.cpp:1309
#16296 0xb56fa129 in KHTMLView::keyReleaseEvent (this=0x8477a48, _ke=0xbfffe750) at /home/thiago/programs/src/kde/kdelibs/khtml/khtmlview.cpp:1664
#16297 0xb570506e in KHTMLView::eventFilter (this=0x8477a48, o=0x8759b98, e=0xbfffe750) at /home/thiago/programs/src/kde/kdelibs/khtml/khtmlview.cpp:1890
#16298 0xb74a2af7 in QObject::activate_filters () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16299 0xb74a2bc2 in QObject::event () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16300 0xb74e09aa in QWidget::event () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16301 0xb7609b42 in QTextEdit::event () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16302 0xb581813a in khtml::TextAreaWidget::event (this=0xbfd0e6b0, e=0x3) at /home/thiago/programs/src/kde/kdelibs/khtml/rendering/render_form.cpp:1539
#16303 0xb743f031 in QApplication::internalNotify () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16304 0xb743f661 in QApplication::notify () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16305 0xb7aa0706 in KApplication::notify (this=0xbffff050, receiver=0x8759b98, event=0xbfffe750) at /home/thiago/programs/src/kde/kdelibs/kdecore/kapplication.cpp:549
#16306 0xb73cd76e in QETWidget::translateKeyEvent () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16307 0xb73d4d76 in QApplication::x11ProcessEvent () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16308 0xb73e83b6 in QEventLoop::processEvents () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16309 0xb74566a7 in QEventLoop::enterLoop () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16310 0xb7456604 in QEventLoop::exec () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16311 0xb743e230 in QApplication::exec () from /home/thiago/programs/src/kde/qt-copy/lib/libqt-mt.so.3
#16312 0xb5dcdb4f in kdemain (argc=-1076828512, argv=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdebase/konqueror/konq_main.cc:206
#16313 0x0804d9f6 in launch (argc=2, _name=0x8153e6c &quot;konqueror&quot;, args=0x8153e80 &quot;\001&quot;, cwd=0x0, envc=1, envs=0x8153e91 &quot;&quot;, reset_env=false, tty=0x0, avoid_loops=false, startup_id_str=0xbfd0e6a0 &quot;\220��\004&quot;) at /home/thiago/programs/src/kde/kdelibs/kinit/kinit.cpp:625
#16314 0x0804e1ed in handle_launcher_request (sock=8) at /home/thiago/programs/src/kde/kdelibs/kinit/kinit.cpp:1189
#16315 0x0804e7a7 in handle_requests (waitForPid=0) at /home/thiago/programs/src/kde/kdelibs/kinit/kinit.cpp:1392
#16316 0x0804f015 in main (argc=2, argv=0xbffff9b4, envp=0xbfd0e6a0) at /home/thiago/programs/src/kde/kdelibs/kinit/kinit.cpp:1848
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>321588</commentid>
    <comment_count>2</comment_count>
    <who name="Germain Garand">germain</who>
    <bug_when>2005-03-06 18:21:19 +0000</bug_when>
    <thetext>mmh, I&apos;d think this is from r1.419 of html_formimpl.cpp
&quot;Fix for textarea onChange not emitted&quot;

value()is retrieved on onChange, but now value() itself calls onChange() when the value is dirty =&gt; infinite loop
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>321985</commentid>
    <comment_count>3</comment_count>
    <who name="Germain Garand">germain</who>
    <bug_when>2005-03-08 01:24:57 +0000</bug_when>
    <thetext>*** Bug 101031 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>322099</commentid>
    <comment_count>4</comment_count>
    <who name="David Faure">faure</who>
    <bug_when>2005-03-08 12:07:03 +0000</bug_when>
    <thetext>CVS commit by faure: 

Fixed infinite loop due to onChange from textareas.
BUG: 100963


  M +2 -2      html_formimpl.cpp   1.427


--- kdelibs/khtml/html/html_formimpl.cpp  #1.426:1.427
@@ -2505,12 +2505,12 @@ DOMString HTMLTextAreaElementImpl::value
             RenderTextArea* renderArea = static_cast&lt;RenderTextArea*&gt;( m_render );
             m_value = renderArea-&gt;text();
+            m_dirtyvalue = false; // before onChange (#100963)
             onChange();
         } else {
             m_value = defaultValue().string();
             m_initialized = true;
-        }
-
         m_dirtyvalue = false;
     }
+    }
 
     if ( m_value.isNull() ) return &quot;&quot;;


</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>322153</commentid>
    <comment_count>5</comment_count>
    <who name="Gleb Litvjak">blaster999</who>
    <bug_when>2005-03-08 15:23:36 +0000</bug_when>
    <thetext>The patch fixed the issue for me. Thanks!</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>