Bug 99826 - Quanta crashes every time when VPL editor is starting
Summary: Quanta crashes every time when VPL editor is starting
Status: RESOLVED FIXED
Alias: None
Product: quanta
Classification: Miscellaneous
Component: VPL (show other bugs)
Version: 3.4
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Paulo Moura Guedes
URL:
Keywords:
: 101318 102364 105662 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-02-19 22:32 UTC by Alexander Malashenko
Modified: 2005-07-18 20:21 UTC (History)
8 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Patch that introduces debug output that could help to unveal this issue. (430 bytes, patch)
2005-03-29 19:42 UTC, Paulo Moura Guedes
Details
Files for checking (1.52 KB, application/x-bzip2)
2005-03-31 23:59 UTC, Alexander Malashenko
Details
Patch that fixes the crash in Alexander files (my_x_config_geforce4_twinview.html) (2.91 KB, patch)
2005-04-21 21:14 UTC, Paulo Moura Guedes
Details
Final patch against 3.4 branch that I forgot to commit (4.54 KB, patch)
2005-05-02 19:57 UTC, Paulo Moura Guedes
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Malashenko 2005-02-19 22:32:24 UTC
Version:            (using KDE KDE 3.3.92)
Installed from:    Compiled From Sources
Compiler:          gcc-3.4.3 
OS:                Linux

OS - FC3
QT - 3.3.4
gcc - 3.4.3

Quanta crashes every time when VPL editor is starting. VPL works only for a new empty file.

Here is the Backtrace:

Using host libthread_db library "/lib/tls/libthread_db.so.1".
`shared object read from target memory' has disappeared; keeping its symbols.
[Thread debugging using libthread_db enabled]
[New Thread -1208125760 (LWP 3280)]
[KCrash handler]
#4  0xffffe410 in __kernel_vsyscall ()
#5  0x4e9185d5 in raise () from /lib/tls/libc.so.6
#6  0x4e919ed5 in abort () from /lib/tls/libc.so.6
#7  0xbfffde80 in ?? ()
#8  0x00000000 in ?? ()

Here is the information from the .xsession-errors file:

terminate called after throwing an instance of 'DOM::DOMException'
KCrash: Application 'quanta' crashing...

I am sorry, if this is a dub of an old bug.
Comment 1 Barry Bulls 2005-02-23 04:53:15 UTC
I have also experienced this, with beta2 on Gentoo.
Comment 2 Alexander Malashenko 2005-03-01 01:23:55 UTC
The same with KDE-3.4.0-rc1 on FC3
Comment 3 Barry Bulls 2005-03-01 01:47:40 UTC
I also experienced this behavior when opening the VPL editor on kde-3.4.0-rc1 on Gentoo compiled with gcc 3.4.3.
Comment 4 Carsten Lohrke 2005-03-22 20:59:05 UTC
Quanta 3.4.0 + tables -> VPL => crash
Comment 5 Andreas Grundler 2005-03-28 13:08:49 UTC
*** This bug has been confirmed by popular vote. ***
Comment 6 Paulo Moura Guedes 2005-03-29 00:36:26 UTC
I can't reproduce it yet but I will take a look.
Comment 7 Paulo Moura Guedes 2005-03-29 19:39:47 UTC
Can you try the following patch and see the output of "KafkaDocument::connectDomNodeToQuantaNode() - domNode name: "?
I'm going to attach the patch also.

--- tmp/kde-mojo/cervisiapVMyrcHEAD 2005-03-29 18:35:55.857632784 +0100
+++ home/mojo/kde-cvs/kdewebdev/quanta/parts/kafka/wkafkapart.cpp 2005-03-29 18:34:47.569014232 +0100
@@ -347,6 +347,8 @@
   _domNode.nodeName().string());*/
  else
   name = domNode.nodeName().string().lower();
+ 
+    kdDebug(23100) << "KafkaDocument::connectDomNodeToQuantaNode() - domNode name: |" << name << "|" << endl;
 
  props = new kNodeAttrs();
Comment 8 Paulo Moura Guedes 2005-03-29 19:42:49 UTC
Created attachment 10414 [details]
Patch that introduces debug output that could help to unveal this issue.
Comment 9 Paulo Moura Guedes 2005-03-30 01:26:09 UTC
CVS commit by mojo: 

Don't insert KHTML DOM nodes from Quanta empty nodes, if DTD not allows it. 
Thanks to Leo for the tip and to Gour for sending me the output of the diff added to #99826.

Can #99826 people confirm me if this fixes the bug?

CCBUG: 99826
CCMAIL: Leo Savernik <l.savernik@aon.at>, quanta-devel@kde.org, carlo@gentoo.org


  M +10 -3     parsers/qtag.cpp   1.23
  M +1 -1      parsers/qtag.h   1.66
  M +18 -8     parts/kafka/wkafkapart.cpp   1.96


--- kdewebdev/quanta/parsers/qtag.cpp  #1.22:1.23
@@ -211,5 +211,5 @@ bool QTag::isChild(const QString& tag, b
 }
 
-bool QTag::isChild(Node *node, bool trueIfNoChildsDefined)
+bool QTag::isChild(Node *node, bool trueIfNoChildsDefined, bool treatEmptyNodesAsText)
 {
   QString nodeName;
@@ -224,6 +224,13 @@ bool QTag::isChild(Node *node, bool true
       return(!childTags.isEmpty() && (childTags.contains("#text") || childTags.contains("#TEXT")));
   }
-  else if(node->tag->type == Tag::Empty)
+  else if(node->tag->type == Tag::Empty && !treatEmptyNodesAsText)
     return true;
+  else if(node->tag->type == Tag::Empty && treatEmptyNodesAsText)
+  {
+      if(trueIfNoChildsDefined)
+          return(childTags.isEmpty() || childTags.contains("#text") || childTags.contains("#TEXT"));
+      else
+          return(!childTags.isEmpty() && (childTags.contains("#text") || childTags.contains("#TEXT")));      
+  }
   else if(node->tag->type == Tag::XmlTagEnd)
   {

--- kdewebdev/quanta/parsers/qtag.h  #1.65:1.66
@@ -236,5 +236,5 @@ public:
   bool isChild(const QString& tag, bool trueIfNoChildsDefined = true);
   //prefer using this variant, it handle Text, Empty, XmlTagEnd nodes!
-  bool isChild(Node *node, bool trueIfNoChildsDefined = true);
+  bool isChild(Node *node, bool trueIfNoChildsDefined = true, bool treatEmptyNodesAsText = false);
   /*** Returns the list of parent of this tag. */
   QPtrList<QTag> parents();

--- kdewebdev/quanta/parts/kafka/wkafkapart.cpp  #1.95:1.96
@@ -349,4 +349,6 @@ kNodeAttrs* KafkaDocument::connectDomNod
                 name = domNode.nodeName().string().lower();
 
+    kdDebug(23100) << "KafkaDocument::connectDomNodeToQuantaNode() - domNode name: |" << name << "|" << endl;
+
         props = new kNodeAttrs();
 
@@ -500,14 +502,22 @@ bool KafkaDocument::buildKafkaNodeFromNo
         int i;
 
-//     This is a hack to not created DOM::Nodes from quanta empty nodes if outside body, because KHTML
-//     moves a node in that condition into the body and then the trees become desynchronized.
-    bool isInsideBody = false;
+//     Don't create DOM::Nodes from Quanta empty nodes outside the body or inside other not allowed element, or KHTML
+//     will give us problems.
+    bool canInsertEmptyNode = false;
+    if(node->tag->type == Tag::Empty)
+    {
     if(!m_currentDoc->defaultDTD()->name.contains("HTML", false))
-        isInsideBody = true;
+            canInsertEmptyNode = true;
     else
-        isInsideBody = kafkaCommon::hasParent(node, "body");
+            canInsertEmptyNode = kafkaCommon::hasParent(node, "body");
+        
+        Node* parent_node = node->parent;
+        QTag* parent_node_description_tag = QuantaCommon::tagFromDTD(parent_node);
+        if(parent_node_description_tag && !parent_node_description_tag->isChild(node, true, true))
+            canInsertEmptyNode = false;
+    }
     
     if(node->tag->type == Tag::XmlTag || 
-       ((node->tag->type == Tag::Text || (node->tag->type == Tag::Empty && isInsideBody)) && !node->insideSpecial))
+       ((node->tag->type == Tag::Text || (node->tag->type == Tag::Empty && canInsertEmptyNode)) && !node->insideSpecial))
     {
                 str = node->tag->name.lower();
Comment 10 Carsten Lohrke 2005-03-30 20:29:08 UTC
Thanks Paulo. Looks good.


Unrelated, but: What strikes me is that - despite not being a Quanta user - every time I play a minute with it, I find another issue. In Short: Cruel image dialog, svg neither in dialog image file list nor does preview work (ksvg works in konqi). Why do I have to save documents explictly to preview them in mozilla? Don't bug me, create tmp files. Why are images not correctly referenced (the place where I safed the document is used as base directory, whereas the base directory of the relative image path in the html file is another one) or symlinked/copied accordingly when I safe the document, so I can preview my document with the images in mozilla? Not a complex workflow, but a lot of issues...
Comment 11 András Manţia 2005-03-30 22:29:26 UTC
First, this belongs to the user list or to individual bug reports. 
Second, here are the answers:

On Wednesday 30 March 2005 22:15, Paulo Moura Guedes wrote:
> Unrelated, but: What strikes me is that - despite not being a Quanta
> user - every time I play a minute with it, I find another issue. 


What do you call an issue? That something does not work as advertised, 
or it crashes, or there ia a bug, or it simply does not do what you 
expect (and what was never advertised), like...

> In 
> Short: Cruel image dialog, svg neither in dialog image file list nor
> does preview work (ksvg works in konqi). 


svg support. YEs, ksvg works in Konqui, I suppose because it's a KPart 
or a service that is used by Konqui.

> Why do I have to save 
> documents explictly to preview them in mozilla? 


How would you feed a file to an external browser? Well, we *might* try 
the preview-* solution with mozilla as well, but it still requires 
saving.

> Don't bug me, create 
> tmp files. 


Yes, we may do it. 

> Why are images not correctly referenced (the place where I 
> safed the document is used as base directory, whereas the base
> directory of the relative image path in the html file is another one)


They are. Show me a case when they are not.

> or symlinked/copied accordingly when I safe the document, so I can
> preview my document with the images in mozilla? Not a complex
> workflow, but a lot of issues...


I don't understand what is the problem.

Andras
Comment 12 Alexander Malashenko 2005-03-30 22:53:15 UTC
I applyed the patch. VPL now works on some very simple pages. On the others still crashes.  There is nothing new in the Backtrace output:
Using host libthread_db library "/lib/tls/libthread_db.so.1".
`shared object read from target memory' has disappeared; keeping its symbols.
[Thread debugging using libthread_db enabled]
[New Thread -1208129856 (LWP 12880)]
[KCrash handler]
#4  0xffffe410 in __kernel_vsyscall ()
#5  0x4e9185d5 in raise () from /lib/tls/libc.so.6
#6  0x4e919ed5 in abort () from /lib/tls/libc.so.6
#7  0xbfffdfd0 in ?? ()
#8  0x00000000 in ?? ()

Here is the messages from the terminal:
terminate called after throwing an instance of 'DOM::DOMException'
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = quanta path = <unknown> pid = 12880
Comment 13 Carsten Lohrke 2005-03-30 23:05:10 UTC
>What do you call an issue?

When something does not work or does not work as the user expects, I call it "an issue". I know it's fuzzy and please don't be too pissed about my carping. :)

Of course I know that you have to save the the files somewhere for other browsers, but that this doesn't happen behind the scenes is something to annoy the user day by day and shouldn't be too hard to implement.


>They are. Show me a case when they are not.

Well I created a file, put some tables, pictures, etc. into it. A created sample reference would be 

<IMG src="Bilder/Eigene/test.png" alt="test" width="83" height="75" border="0">

where the implied base directory is ~/. Then I saved the html file to ~/test to be able to have a look at it in Mozilla. It couldn't find ~/test/Bilder/Eigene/test.png... I expect a web development suite to take care of referenced files transparently. Some backup/versioning/undo/rollback functionality in case the user deleted/moved/changed referenced files would be even better.


>I don't understand what is the problem.

If you don't see a problem, that's fine with me. I just wanted to point out, that I'd be dissatified if I had to use these features of this application regularly. Maybe I'm totally wrong and everyone else is fine with it. :)



Alexander: Could you attach a sample file?
Comment 14 Alexander Malashenko 2005-03-31 23:59:06 UTC
Created attachment 10457 [details]
Files for checking

In the compressed file there are two files. They are completely identical
exlude comments in the <head><!-- .... --></head>. On the first one
(my_x_config_geforce4_twinview.html) my VPL crashes. There is no the problem on
another(my_x_config_geforce4_twinview2.html).
Comment 15 Alexander Malashenko 2005-04-01 21:18:55 UTC
The correct name of my attached file is "my_x_config_geforce4_twinview.tar.bz2". I don't know why the system changed it to attachment.cgi. Maybe it must be so. If to download the file and then rename to *.tar.bz2 it can be unpacked correctly.
I am sorry if I did something wrong.
Comment 16 Carsten Lohrke 2005-04-02 18:03:00 UTC
Indeed, Quanta crashes here too with your files, Alexander. My simple test case wasn't enough as it seems. I tried to open arbitrary remote websites before, but since Quanta opens only files... 

/me bites on his tongue. Here's a full backtrace:


sing host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 16384 (LWP 4954)]
[KCrash handler]
#5  0x41c499f1 in kill () from /lib/libc.so.6
#6  0x41bab8c0 in pthread_kill () from /lib/libpthread.so.0
#7  0x41babc9b in raise () from /lib/libpthread.so.0
#8  0x41c49466 in raise () from /lib/libc.so.6
#9  0x41c4ae1a in abort () from /lib/libc.so.6
#10 0x4013a62b in __gnu_cxx::__verbose_terminate_handler() ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#11 0x40138265 in __cxxabiv1::__terminate(void (*)()) ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#12 0x401382a2 in std::terminate() ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#13 0x40138412 in __cxa_throw ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#14 0x40684334 in DOM::Node::insertBefore(DOM::Node const&, DOM::Node const&) (
    this=0x0, newChild=@0x8c924b0, refChild=@0x0) at dom_node.cpp:264
#15 0x082b133c in kafkaCommon::insertDomNode(DOM::Node, DOM::Node, DOM::Node, DOM::Node) (node=
      {next = 0x835d010, prev = 0x8c4a818, parent = 0xbfffd938, child = 0x41716590, _closingNode = 0x835faa8, tag = 0x835faa8, listItems = {sh = 0x835faa8}, mainListItem = 0x835faa8, closesPrevious = 168, opened = 250, removeAll = 53, insideSpecial = 8, specialInsideXml = 168, fileName = {static null = {static null = <same as static member of an already seen type>, d = 0x835faa8, static shared_null = 0x835faa8}, d = 0x835faa8, static shared_null = 0x835faa8}, m_groupElements = {sh = 0x6651}, m_rootNode = 0x835faa8, m_leafNode = 0x8c0b390}, parent=
      {next = 0x835d010, prev = 0x84692a8, parent = 0xbfffd888, child = 0x410bdf68, _closingNode = 0x835d010, tag = 0x8cb0bdc, listItems = {sh = 0xbfffd890}, mainListItem = 0x8b58c30, closesPrevious = 40, opened = 225, removeAll = 142, insideSpecial = 8, specialInsideXml = 16, fileName = {static null = {static null = <same as static member of an already seen type>, d = 0x835faa8, static shared_null = 0x835faa8}, d = 0x410cb780, static shared_null = 0x835faa8}, m_groupElements = {sh = 0x410bdf68}, m_rootNode = 0x8b6e190, m_leafNode = 0x410cb764}, 
    nextSibling=) at kafkacommon.cpp:3330
#16 0x082f6674 in HTMLEnhancer::enhanceNode(Node*, DOM::Node, DOM::Node) (
    this=0x85ff098, node=0x8b1a350, parentDNode=
      {next = 0x835d010, prev = 0x84692a8, parent = 0xbfffdac8, child = 0x410766d1, _closingNode = 0x40159cb4, tag = 0x8a064c0, listItems = {sh = 0xbfffdad8}, mainListItem = 0x40137181, closesPrevious = 192, opened = 100, removeAll = 160, insideSpecial = 8, specialInsideXml = 76, fileName = {static null = {static null = <same as static member of an already seen type>, d = 0x835faa8, static shared_null = 0x835faa8}, d = 0xbfffdaf8, static shared_null = 0x835faa8}, m_groupElements = {sh = 0x41714654}, m_rootNode = 0x8a064c0, m_leafNode = 0x8c5d8a0}, 
    nextDNode=
      {next = 0x835d010, prev = 0x0, parent = 0x410cb780, child = 0x410bdf68, _closingNode = 0x835d010, tag = 0x84692a8, listItems = {sh = 0xbfffdac8}, mainListItem = 0x410766d1, closesPrevious = 180, opened = 156, removeAll = 21, insideSpecial = 64, specialInsideXml = 192, fileName = {static null = {static null = <same as static member of an already seen type>, d = 0x835faa8, static shared_null = 0x835faa8}, d = 0xbfffdad8, static shared_null = 0x835faa8}, m_groupElements = {sh = 0x40137181}, m_rootNode = 0x8a064c0, m_leafNode = 0x41889b4c})
    at htmlenhancer.cpp:195
#17 0x082d6aa1 in KafkaDocument::buildKafkaNodeFromNode(Node*, bool) (
    this=0x8566658, node=0x8b1a350, insertNode=160) at wkafkapart.cpp:769
#18 0x082d8751 in KafkaDocument::loadDocument(Document*) (this=0x8566658, 
    doc=0x8b1a350) at wkafkapart.cpp:204
#19 0x08098023 in QuantaView::slotSetVPLOnlyLayout() (this=0x8cad560)
    at quantaview.cpp:456
#20 0x080d2a67 in QuantaApp::qt_invoke(int, QUObject*) (this=0x84af640, 
    _id=307, _o=0xbfffde30) at quanta.moc:806
#21 0x41430374 in QObject::activate_signal(QConnectionList*, QUObject*) ()
   from /usr/qt/3/lib/libqt-mt.so.3
#22 0x41430a92 in QObject::activate_signal(int) ()
   from /usr/qt/3/lib/libqt-mt.so.3
#23 0x40cfc41e in KAction::activated() (this=0x0) at kaction.moc:171
#24 0x40cfcefa in KAction::slotActivated() (this=0xbfffde44)
    at kaction.cpp:1102
#25 0x40d0cdef in KToggleAction::slotActivated() (this=0x86d2d30)
    at kactionclasses.cpp:230
#26 0x40cfc5c3 in KAction::slotButtonClicked(int, Qt::ButtonState) (
    this=0x86d2d30, state=3221216816) at kaction.cpp:1147
#27 0x40d0008b in KAction::qt_invoke(int, QUObject*) (this=0x86d2d30, 
    _id=-1073749928, _o=0xbfffdff0) at kaction.moc:214
#28 0x40d0ce5b in KToggleAction::qt_invoke(int, QUObject*) (this=0x86d2d30, 
    _id=16, _o=0xbfffdff0) at kactionclasses.moc:110
#29 0x41430374 in QObject::activate_signal(QConnectionList*, QUObject*) ()
   from /usr/qt/3/lib/libqt-mt.so.3
#30 0x40dbe835 in KToolBarButton::buttonClicked(int, Qt::ButtonState) (
    this=0x8747598, t0=0, t1=LeftButton) at ktoolbarbutton.moc:154
#31 0x40dbe9dc in KToolBarButton::mouseReleaseEvent(QMouseEvent*) (
    this=0x8747598, e=0xbfffe5b0) at ktoolbarbutton.cpp:479
#32 0x41469606 in QWidget::event(QEvent*) () from /usr/qt/3/lib/libqt-mt.so.3
#33 0x413cd78f in QApplication::internalNotify(QObject*, QEvent*) ()
   from /usr/qt/3/lib/libqt-mt.so.3
#34 0x413cdb53 in QApplication::notify(QObject*, QEvent*) ()
   from /usr/qt/3/lib/libqt-mt.so.3
#35 0x40f56591 in KApplication::notify(QObject*, QEvent*) (this=0x8380930, 
    receiver=0x8747598, event=0xbfffe5b0) at kapplication.cpp:549
#36 0x413663b2 in QETWidget::translateMouseEvent(_XEvent const*) ()
   from /usr/qt/3/lib/libqt-mt.so.3
#37 0x41364c91 in QApplication::x11ProcessEvent(_XEvent*) ()
   from /usr/qt/3/lib/libqt-mt.so.3
#38 0x413785a6 in QEventLoop::processEvents(unsigned) ()
   from /usr/qt/3/lib/libqt-mt.so.3
#39 0x413e3e30 in QEventLoop::enterLoop() () from /usr/qt/3/lib/libqt-mt.so.3
#40 0x413e3d86 in QEventLoop::exec() () from /usr/qt/3/lib/libqt-mt.so.3
#41 0x413cc93f in QApplication::exec() () from /usr/qt/3/lib/libqt-mt.so.3
#42 0x0809d1ee in main (argc=1, argv=0x8380930) at main.cpp:212
Comment 17 Thomas Bettler 2005-04-03 15:35:24 UTC
Well, I just can't reproduce it. I'm using kde3.4 compiled in gentoo.
Comment 18 Thomas Bettler 2005-04-03 16:05:17 UTC
For me everything works fine as expected.
If you want I'll package my quanta as gentoo package and you can get it...

Don't know if that matters (or only for debugging ... since I'm no hacker)
I use sys-libs/glibc-2.3.4.20041102-r1 -build -debug -erandom -hardened (-multilib) +nls -nomalloccheck +nptl -nptlonly +pic +userlocales
Comment 19 Paulo Moura Guedes 2005-04-03 17:48:22 UTC
On Sunday 03 April 2005 13:35, Thomas Bettler wrote:
> ------- Additional Comments From bettlertho sis unibe ch  2005-04-03 15:35
> ------- Well, I just can't reproduce it. I'm using kde3.4 compiled in
> gentoo.


Neither do I... maybe this has something to do with exception flags?
Comment 20 Tim Middleton 2005-04-04 19:14:03 UTC
I also have the above problem on my Gentoo laptop. Besides my own problem files, I have tried it with the sample HTML files attached to this bug report, and the first definitely crashes when entering VPL view. 

Interestingly, this problem does *not* exist on my FreeBSD desktop. 

So it almost does seem like it's maybe compiler/flags/dependencies or something. Because obviously the Quanta (3.4.0) source code is the same on both systems.

I also tried Paulo's patch above, and it did not change the behaviour on the Gentoo box... it still crashes.

On Gentoo i'm running what Gentoo refers to as gcc/glibc 2.3.4-20050125-r1 (nls is enabled, everything else disabled in gentoo flags). gcc on the FreeBSD 5.3 box is 3.4.2 (20040728).

If any other details of these systems would be helpful, let me know.

Comment 21 Tim Middleton 2005-04-10 20:51:56 UTC
I switched back to gcc 3.3.5 (and glibc 2.3.4.20041102) and recompiled kdelibs and kdewebdev with it, and the crash on starting VPL disappeared. However, quanta would crash after running for about 5 minutes (just sitting there, without being touched) for some reason. I then (after reading about someone having a quanta/kdesdk seeming crash problem) recompiled kdesdk and kdebase... 

It seems much more stable, but still crashes eventually. But since the symptoms are not the same as previously described above, this may be another problem now. Or could be just various libraries compiled with different gcc's conflicting somehow. (Alas, I'm not sure how or whether this effects things.)
Comment 22 Rex Dieter 2005-04-15 14:58:57 UTC
Also seeing crash entering VPL mode on rhel4.  I'll try out the debugging patch...
Comment 23 Rex Dieter 2005-04-15 14:59:32 UTC
*** Bug 102364 has been marked as a duplicate of this bug. ***
Comment 24 Rex Dieter 2005-04-15 15:41:53 UTC
Even after applying the patch posted here, still seeing crash.  quanta STDOUT/STDERR output:
$ quanta
terminate called after throwing an instance of 'DOM::DOMException'

and backtrace:
Using host libthread_db library "/lib/tls/libthread_db.so.1".
0x00fc47a2 in ?? () from /lib/ld-linux.so.2
#0  0x00fc47a2 in ?? () from /lib/ld-linux.so.2
#1  0x006a43e3 in waitpid () from /lib/tls/libpthread.so.0
#2  0x01908e20 in KCrash::defaultCrashHandler () from /usr/lib/libkdecore.so.4
#3  0x07190a48 in killpg () from /lib/tls/libc.so.6
#4  0x07192319 in abort () from /lib/tls/libc.so.6
#5  0x00d6e85b in __gnu_cxx::__verbose_terminate_handler ()
   from /usr/lib/libstdc++.so.6
#6  0x00d6c571 in __cxa_call_unexpected () from /usr/lib/libstdc++.so.6
#7  0x00d6c5a6 in std::terminate () from /usr/lib/libstdc++.so.6
#8  0x00d6c6ef in __cxa_throw () from /usr/lib/libstdc++.so.6
#9  0x004b2096 in DOM::Node::insertBefore () from /usr/lib/libkhtml.so.4
#10 0x082b683e in kafkaCommon::insertDomNode (node=<incomplete type>, 
    parent=<incomplete type>, rootNode=<incomplete type>)
    at kafkacommon.cpp:3330
#11 0x082f9f29 in HTMLEnhancer::enhanceNode (this=0x8714af8, node=0x8a0efe0, 
    parentDNode=<incomplete type>, nextDNode=<incomplete type>)
    at dom_node.h:278
#12 0x082d1f82 in KafkaDocument::buildKafkaNodeFromNode (this=0x86ae1a8, 
    node=0x8a0efe0, insertNode=200) at wkafkapart.cpp:768
#13 0x082ce42f in KafkaDocument::loadDocument (this=0x86ae1a8, doc=0x0)
    at wkafkapart.cpp:204
#14 0x08097d6e in QuantaView::slotSetVPLOnlyLayout (this=0x8a967f8)
    at quantaview.cpp:456
#15 0x080d6a50 in QuantaApp::slotShowVPLOnly (this=0x85d5400)
    at viewmanager.h:38
#16 0x080d8ece in QuantaApp::qt_invoke (this=0x85d5400, _id=308, _o=0xbfeaa650)
    at quanta.moc:806
#17 0x046b960e in QObject::activate_signal ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#18 0x046b9ce4 in QObject::activate_signal ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#19 0x063c99c3 in KAction::activated () from /usr/lib/libkdeui.so.4
#20 0x063ca37e in KAction::slotActivated () from /usr/lib/libkdeui.so.4
#21 0x063da12c in KToggleAction::slotActivated () from /usr/lib/libkdeui.so.4
#22 0x063ce906 in KAction::slotPopupActivated () from /usr/lib/libkdeui.so.4
#23 0x063ceb01 in KAction::qt_invoke () from /usr/lib/libkdeui.so.4
#24 0x063da18a in KToggleAction::qt_invoke () from /usr/lib/libkdeui.so.4
#25 0x046b960e in QObject::activate_signal ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#26 0x049ec6fd in QSignal::signal () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#27 0x046d23ed in QSignal::activate () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#28 0x047bc326 in QPopupMenu::mouseReleaseEvent ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#29 0x063ba69a in KPopupMenu::mouseReleaseEvent () from /usr/lib/libkdeui.so.4
#30 0x046ef8ca in QWidget::event () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#31 0x0465a9d9 in QApplication::internalNotify ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#32 0x0465ac19 in QApplication::notify ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#33 0x01873d28 in KApplication::notify () from /usr/lib/libkdecore.so.4
#34 0x045f7d31 in QETWidget::translateMouseEvent ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#35 0x045f5ef5 in QApplication::x11ProcessEvent ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#36 0x04608d46 in QEventLoop::processEvents ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#37 0x04670075 in QEventLoop::enterLoop ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#38 0x0466ffce in QEventLoop::exec () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#39 0x04659bdb in QApplication::exec () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#40 0x0809cb3b in main (argc=1, argv=0xbfeab5a4) at main.cpp:212
#41 0x0717de33 in __libc_start_main () from /lib/tls/libc.so.6
#42 0x08087721 in _start ()

Comment 25 Rex Dieter 2005-04-21 14:56:11 UTC
FYI, Fedora Core 3 (gcc-3.4.2,gcc-3.4.3), Red Hat Enterprise 4(gcc-3.4.3) both exhibit the bad behavior. However, RedHat 9 (gcc-3.2.2), Red Hat Enterprise 3(gcc-3.2.3) are fine.  

Possibly something specific to gcc-3.4.x?
Comment 26 Paulo Moura Guedes 2005-04-21 21:13:37 UTC
CVS commit by mojo: 

I installed FC3 and I could reproduce the crash.
This commit fix the crash in the files provided by Alexander (my_x_config_geforce4_twinview.html) but there can be other crashes in other situations so, I want your files and backtraces :)

I'll also attach the diff in the bug report.

CCBUG: 99826
CCMAIL: quanta-devel@kde.org


  M +33 -28    htmlenhancer.cpp   1.23


--- kdewebdev/quanta/parts/kafka/htmlenhancer.cpp  #1.22:1.23
@@ -170,4 +170,8 @@ bool HTMLEnhancer::enhanceNode(Node *nod
                 kdDebug(25001)<< "HTMLTranslator::translateNode() - Comment" << endl;
 #endif
+        QTag* qTag = QuantaCommon::tagFromDTD(m_wkafkapart->getCurrentDoc()->defaultDTD(),
+                                              parentDNode.nodeName().string());
+        if(qTag->isChild("IMG", false))
+        {
                 filename = m_stddirs->findResource("data", "kafkapart/pics/comment.png" );
                 if(!filename.isEmpty())
@@ -198,4 +202,5 @@ bool HTMLEnhancer::enhanceNode(Node *nod
                 }
         }
+    }
 
         //THEN add a TBODY tag if necessary
Comment 27 Paulo Moura Guedes 2005-04-21 21:14:53 UTC
Created attachment 10740 [details]
Patch that fixes the crash in Alexander files (my_x_config_geforce4_twinview.html)
Comment 28 Carsten Lohrke 2005-04-23 16:31:27 UTC
httrack: hp.com, index.html

[KCrash handler]
#5  0x41c4b9f1 in kill () from /lib/libc.so.6
#6  0x41bad8c0 in pthread_kill () from /lib/libpthread.so.0
#7  0x41badc9b in raise () from /lib/libpthread.so.0
#8  0x41c4b466 in raise () from /lib/libc.so.6
#9  0x41c4ce1a in abort () from /lib/libc.so.6
#10 0x4013a62b in __gnu_cxx::__verbose_terminate_handler ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#11 0x40138265 in __cxxabiv1::__terminate ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#12 0x401382a2 in std::terminate ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#13 0x40138412 in __cxa_throw ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#14 0x40684344 in DOM::Node::insertBefore (this=0x0, newChild=@0x8fb6638, 
    refChild=@0x0) at dom_node.cpp:264
#15 0x082b133c in kafkaCommon::insertDomNode (node=
      {_vptr.Node = 0x835d150, impl = 0x8fb8b00}, parent=
      {_vptr.Node = 0x835d150, impl = 0x8fb8900}, nextSibling=)
    at kafkacommon.cpp:3330
#16 0x082d7e4b in KafkaDocument::buildKafkaNodeFromNode (this=0x84ff1e8, 
    node=0x8cf66b0, insertNode=8) at wkafkapart.cpp:724
#17 0x082d8751 in KafkaDocument::loadDocument (this=0x84ff1e8, doc=0x8cf66b0)
    at wkafkapart.cpp:204
#18 0x08098023 in QuantaView::slotSetVPLOnlyLayout (this=0x8d21500)
    at quantaview.cpp:456
#19 0x080d2a67 in QuantaApp::qt_invoke (this=0x84afe00, _id=307, _o=0xbfffdd50)
    at quanta.moc:806
#20 0x41432374 in QObject::activate_signal () from /usr/qt/3/lib/libqt-mt.so.3
#21 0x41432a92 in QObject::activate_signal () from /usr/qt/3/lib/libqt-mt.so.3
#22 0x40cfc42e in KAction::activated (this=0x0) at kaction.moc:171
#23 0x40cfcf0a in KAction::slotActivated (this=0xbfffdd64) at kaction.cpp:1102
#24 0x40d0cdff in KToggleAction::slotActivated (this=0x86d3560)
    at kactionclasses.cpp:230
#25 0x40cfc5d3 in KAction::slotButtonClicked (this=0x86d3560, state=3221216592)
    at kaction.cpp:1147
#26 0x40d0009b in KAction::qt_invoke (this=0x86d3560, _id=-1073750152, 
    _o=0xbfffdf10) at kaction.moc:214
#27 0x40d0ce6b in KToggleAction::qt_invoke (this=0x86d3560, _id=16, 
    _o=0xbfffdf10) at kactionclasses.moc:110
#28 0x41432374 in QObject::activate_signal () from /usr/qt/3/lib/libqt-mt.so.3
#29 0x40dbe845 in KToolBarButton::buttonClicked (this=0x8748110, t0=0, 
    t1=LeftButton) at ktoolbarbutton.moc:154
#30 0x40dbe9ec in KToolBarButton::mouseReleaseEvent (this=0x8748110, 
    e=0xbfffe4d0) at ktoolbarbutton.cpp:479
#31 0x4146b606 in QWidget::event () from /usr/qt/3/lib/libqt-mt.so.3
#32 0x413cf78f in QApplication::internalNotify ()
   from /usr/qt/3/lib/libqt-mt.so.3
#33 0x413cfb53 in QApplication::notify () from /usr/qt/3/lib/libqt-mt.so.3
#34 0x40f565a1 in KApplication::notify (this=0x8380a70, receiver=0x8748110, 
    event=0xbfffe4d0) at kapplication.cpp:549
#35 0x413683b2 in QETWidget::translateMouseEvent ()
   from /usr/qt/3/lib/libqt-mt.so.3
#36 0x41366c91 in QApplication::x11ProcessEvent ()
   from /usr/qt/3/lib/libqt-mt.so.3
#37 0x4137a5a6 in QEventLoop::processEvents () from /usr/qt/3/lib/libqt-mt.so.3
#38 0x413e5e30 in QEventLoop::enterLoop () from /usr/qt/3/lib/libqt-mt.so.3
#39 0x413e5d86 in QEventLoop::exec () from /usr/qt/3/lib/libqt-mt.so.3
#40 0x413ce93f in QApplication::exec () from /usr/qt/3/lib/libqt-mt.so.3
#41 0x0809d1ee in main (argc=1, argv=0x8380a70) at main.cpp:212


httrack: heise.de, index.html

[KCrash handler]
#5  0x41c4b9f1 in kill () from /lib/libc.so.6
#6  0x41bad8c0 in pthread_kill () from /lib/libpthread.so.0
#7  0x41badc9b in raise () from /lib/libpthread.so.0
#8  0x41c4b466 in raise () from /lib/libc.so.6
#9  0x41c4ce1a in abort () from /lib/libc.so.6
#10 0x4013a62b in __gnu_cxx::__verbose_terminate_handler ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#11 0x40138265 in __cxxabiv1::__terminate ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#12 0x401382a2 in std::terminate ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#13 0x40138412 in __cxa_throw ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#14 0x40684344 in DOM::Node::insertBefore (this=0x0, newChild=@0x8e116b0, 
    refChild=@0x0) at dom_node.cpp:264
#15 0x082b133c in kafkaCommon::insertDomNode (node=
      {_vptr.Node = 0x835d150, impl = 0x8e11210}, parent=
      {_vptr.Node = 0x835d150, impl = 0x8e10a88}, nextSibling=)
    at kafkacommon.cpp:3330
#16 0x082f64fa in HTMLEnhancer::enhanceNode (this=0x85ff658, node=0x8dc6db0, 
    parentDNode={_vptr.Node = 0x835d150, impl = 0x8e10a88}, nextDNode=
      {_vptr.Node = 0x835d150, impl = 0x0}) at htmlenhancer.cpp:160
#17 0x082d6aa1 in KafkaDocument::buildKafkaNodeFromNode (this=0x84e5958, 
    node=0x8dc6db0, insertNode=192) at wkafkapart.cpp:769
#18 0x082d8751 in KafkaDocument::loadDocument (this=0x84e5958, doc=0x8dc6db0)
    at wkafkapart.cpp:204
#19 0x08098023 in QuantaView::slotSetVPLOnlyLayout (this=0x8cbad40)
    at quantaview.cpp:456
#20 0x080d2a67 in QuantaApp::qt_invoke (this=0x84afe70, _id=307, _o=0xbfffdd50)
    at quanta.moc:806
#21 0x41432374 in QObject::activate_signal () from /usr/qt/3/lib/libqt-mt.so.3
#22 0x41432a92 in QObject::activate_signal () from /usr/qt/3/lib/libqt-mt.so.3
#23 0x40cfc42e in KAction::activated (this=0x0) at kaction.moc:171
#24 0x40cfcf0a in KAction::slotActivated (this=0xbfffdd64) at kaction.cpp:1102
#25 0x40d0cdff in KToggleAction::slotActivated (this=0x86d3558)
    at kactionclasses.cpp:230
#26 0x40cfc5d3 in KAction::slotButtonClicked (this=0x86d3558, state=3221216592)
    at kaction.cpp:1147
#27 0x40d0009b in KAction::qt_invoke (this=0x86d3558, _id=-1073750152, 
    _o=0xbfffdf10) at kaction.moc:214
#28 0x40d0ce6b in KToggleAction::qt_invoke (this=0x86d3558, _id=16, 
    _o=0xbfffdf10) at kactionclasses.moc:110
#29 0x41432374 in QObject::activate_signal () from /usr/qt/3/lib/libqt-mt.so.3
#30 0x40dbe845 in KToolBarButton::buttonClicked (this=0x8748128, t0=0, 
    t1=LeftButton) at ktoolbarbutton.moc:154
#31 0x40dbe9ec in KToolBarButton::mouseReleaseEvent (this=0x8748128, 
    e=0xbfffe4d0) at ktoolbarbutton.cpp:479
#32 0x4146b606 in QWidget::event () from /usr/qt/3/lib/libqt-mt.so.3
#33 0x413cf78f in QApplication::internalNotify ()
   from /usr/qt/3/lib/libqt-mt.so.3
#34 0x413cfb53 in QApplication::notify () from /usr/qt/3/lib/libqt-mt.so.3
#35 0x40f565a1 in KApplication::notify (this=0x8380a70, receiver=0x8748128, 
    event=0xbfffe4d0) at kapplication.cpp:549
#36 0x413683b2 in QETWidget::translateMouseEvent ()
   from /usr/qt/3/lib/libqt-mt.so.3
#37 0x41366c91 in QApplication::x11ProcessEvent ()
   from /usr/qt/3/lib/libqt-mt.so.3
#38 0x4137a5a6 in QEventLoop::processEvents () from /usr/qt/3/lib/libqt-mt.so.3
#39 0x413e5e30 in QEventLoop::enterLoop () from /usr/qt/3/lib/libqt-mt.so.3
#40 0x413e5d86 in QEventLoop::exec () from /usr/qt/3/lib/libqt-mt.so.3
#41 0x413ce93f in QApplication::exec () from /usr/qt/3/lib/libqt-mt.so.3
#42 0x0809d1ee in main (argc=1, argv=0x8380a70) at main.cpp:212


Both patches applied, two of three tested failed - quanta survived gentoo.org.
Comment 29 Paulo Moura Guedes 2005-04-23 19:54:06 UTC
CVS commit by mojo: 

Never propagate exceptions between module boundaries (in C++).

KHTML DOM::DOMException can be raised when calling Node::insertBefore and, in some situations/distributions, caughting the exception doesn't work outside KHTML, i.e., Quanta. So, try to prevent the exception to be raised when possible.

This should fix all the reported problems.

BUG: 99826
CCMAIL: quanta-devel@kde.org


  M +5 -2      htmlenhancer.cpp   1.24
  M +1 -10     kafkacommon.cpp   1.81
  M +30 -23    wkafkapart.cpp   1.98


--- kdewebdev/quanta/parts/kafka/htmlenhancer.cpp  #1.23:1.24
@@ -127,6 +127,9 @@ bool HTMLEnhancer::enhanceNode(Node *nod
         }
 
+    QTag* qTag = QuantaCommon::tagFromDTD(m_wkafkapart->getCurrentDoc()->defaultDTD(),
+                                          parentDNode.nodeName().string());
+
         //THEN replace, if asked, scripts by a little icon.
-        if(node->tag->type == Tag::ScriptTag && m_showIconForScripts)
+    if(node->tag->type == Tag::ScriptTag && m_showIconForScripts && qTag->isChild("IMG", false))
         {
                 script = node->tag->name.left(node->tag->name.find("block", 0, false) - 1).lower();
@@ -165,5 +168,5 @@ bool HTMLEnhancer::enhanceNode(Node *nod
         
         //THEN if it is a comment, add a little icon ;o)
-        if(node->tag->type == Tag::Comment && m_showIconForScripts)
+    if(node->tag->type == Tag::Comment && m_showIconForScripts && qTag->isChild("IMG", false))
         {
 #ifdef LIGHT_DEBUG

--- kdewebdev/quanta/parts/kafka/kafkacommon.cpp  #1.80:1.81
@@ -3639,17 +3639,8 @@ bool kafkaCommon::insertDomNode(DOM::Nod
     {
         parent.insertBefore(node, nextSibling);
-#ifdef HEAVY_DEBUG
-
     }
-    catch(DOM::DOMException e)
+    catch(DOM::DOMException const& e)
     {
         kdDebug(25001)<< "kafkaCommon::insertDomNode() - ERROR code :" << e.code << endl;
-#else
-
-    }
-    catch(DOM::DOMException)
-    {
-#endif
-        return false;
     }
     return true;

--- kdewebdev/quanta/parts/kafka/wkafkapart.cpp  #1.97:1.98
@@ -721,4 +721,10 @@ bool KafkaDocument::buildKafkaNodeFromNo
                         mainEnhancer->enhanceNode(node, parentNode, nextNode);
 
+            QTag* qTag = QuantaCommon::tagFromDTD(getCurrentDoc()->defaultDTD(),
+                    parentNode.nodeName().string());
+
+            if(qTag->isChild(node, false))
+            {
+                
                         if(nextNode.isNull())
                         {
@@ -744,4 +750,5 @@ bool KafkaDocument::buildKafkaNodeFromNo
                         }
                 }
+        }
                 else
                 {
Comment 30 Kyle Pablo 2005-04-26 21:10:28 UTC
hello, 

i updated my version of kdewebdev to 3.4.0-1.6 for fc3 binary and it still crashes...here is my dump:

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1208359232 (LWP 28818)]
[KCrash handler]
#4  0x004e07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#5  0x005217d5 in raise () from /lib/tls/libc.so.6
#6  0x00523149 in abort () from /lib/tls/libc.so.6
#7  0x009050eb in __gnu_cxx::__verbose_terminate_handler ()
  from /usr/lib/libstdc++.so.6
#8  0x00902e01 in __cxa_call_unexpected () from /usr/lib/libstdc++.so.6
#9  0x00902e36 in std::terminate () from /usr/lib/libstdc++.so.6
#10 0x00902f7f in __cxa_throw () from /usr/lib/libstdc++.so.6
#11 0x065b4866 in DOM::Node::insertBefore () from /usr/lib/libkhtml.so.4
#12 0x082e99e8 in KSaveSelectDialog::staticMetaObject ()
#13 0x083154ba in KafkaDocument::staticMetaObject ()
#14 0x0831691f in KafkaDocument::staticMetaObject ()
#15 0x08316e7b in KafkaDocument::staticMetaObject ()
#16 0x0831bb9f in KafkaDocument::staticMetaObject ()
#17 0x08098051 in QMemArray<char>::detach ()
#18 0x0817878c in Parser::staticMetaObject ()
#19 0x081792be in Parser::staticMetaObject ()
#20 0x080a2f75 in QPtrList<char>::deleteItem ()
#21 0x080b443f in QPtrList<char>::deleteItem ()
#22 0x0588762e in QObject::activate_signal ()
  from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#23 0x05bba82d in QSignal::signal () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#24 0x058a040d in QSignal::activate () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#25 0x058a761f in QSingleShotTimer::event ()
  from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#26 0x05828a19 in QApplication::internalNotify ()
  from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#27 0x05828baa in QApplication::notify ()
  from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#28 0x001bde08 in KApplication::notify () from /usr/lib/libkdecore.so.4
#29 0x0581cd8b in QEventLoop::activateTimers ()
  from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#30 0x057d72ae in QEventLoop::processEvents ()
  from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#31 0x0583e0b5 in QEventLoop::enterLoop ()
  from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#32 0x0583e00e in QEventLoop::exec () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#33 0x05827c1b in QApplication::exec () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#34 0x0809f1b7 in QPtrList<char>::deleteItem ()
#35 0x0050ee23 in __libc_start_main () from /lib/tls/libc.so.6
#36 0x080876e1 in ?? ()


------------------------------------------------------------------

And consoles output on startup and exit:

QInputContext: cannot create input context for non-toplevel widgets
QInputContext: cannot create input context for non-toplevel widgets
end from FAM server connection
QGDict::hashKeyString: Invalid null key
QGDict::hashKeyString: Invalid null key
KCrash: Application 'quanta' crashing...
end from FAM server connection
Comment 31 Rex Dieter 2005-04-26 21:21:35 UTC
FYI, kdewebdev-3.4.0-1.6 referenced in comment #30 includes the patches from comments #26 and #29.

Kyle, are your crashes VPL-editor-specific or not?  If not, I'd suggest filing a new bug.
Comment 32 Paulo Moura Guedes 2005-04-27 00:21:01 UTC
On Tuesday 26 April 2005 20:10, Kyle Pablo wrote:
> hello,
>
> i updated my version of kdewebdev to 3.4.0-1.6 for fc3 binary and it still
> crashes...here is my dump:


That version has the patches applied? I comited the change in CVS HEAD and 
will backport to KDE_3_4_BRANCH.
Comment 33 Rex Dieter 2005-04-27 03:27:49 UTC
Per my comment #31, yes, it has all patches presented here (though I've not personally been able to crash quanta since applying them).
Comment 34 Kyle Pablo 2005-04-27 04:53:27 UTC
hello rex,

it crashes when i begin to type code in the src editor...another time it crashed when i went to save...when u mean vp-editor specific do u mean do i have the vpl editor and src window open at the same time then yes but if i dont have it open, the vpl editor, it will crash...i do want to say the crashes r less frequent...
Comment 35 Carsten Lohrke 2005-05-02 18:49:18 UTC
Paulo: Applied your backported fixes, tried to view index.html from hp.com with VPL,...


Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 16384 (LWP 12576)]
[KCrash handler]
#5  0x41c409f1 in kill () from /lib/libc.so.6
#6  0x41ba28c0 in pthread_kill () from /lib/libpthread.so.0
#7  0x41ba2c9b in raise () from /lib/libpthread.so.0
#8  0x41c40466 in raise () from /lib/libc.so.6
#9  0x41c41e1a in abort () from /lib/libc.so.6
#10 0x4013a62b in __gnu_cxx::__verbose_terminate_handler ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#11 0x40138265 in __cxxabiv1::__terminate ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#12 0x401382a2 in std::terminate ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#13 0x40138412 in __cxa_throw ()
   from //usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/libstdc++.so.6
#14 0x40685344 in DOM::Node::insertBefore (this=0x0, newChild=@0x8eb4460, 
    refChild=@0x0) at dom_node.cpp:264
#15 0x082b134c in kafkaCommon::insertDomNode (node=
      {_vptr.Node = 0x835d2d0, impl = 0x8c48b88}, parent=
      {_vptr.Node = 0x835d2d0, impl = 0x8eb3c80}, nextSibling=)
    at kafkacommon.cpp:3330
#16 0x082d7ef4 in KafkaDocument::buildKafkaNodeFromNode (this=0x85b80e8, 
    node=0x8d6ded0, insertNode=160) at wkafkapart.cpp:719
#17 0x082d8811 in KafkaDocument::loadDocument (this=0x85b80e8, doc=0x8d6ded0)
    at wkafkapart.cpp:204
#18 0x08098033 in QuantaView::slotSetVPLOnlyLayout (this=0x8d407f0)
    at quantaview.cpp:456
#19 0x080d2a77 in QuantaApp::qt_invoke (this=0x84acf38, _id=307, _o=0xbfffdd70)
    at quanta.moc:806
#20 0x41427374 in QObject::activate_signal () from /usr/qt/3/lib/libqt-mt.so.3
#21 0x41427a92 in QObject::activate_signal () from /usr/qt/3/lib/libqt-mt.so.3
#22 0x40cfd42e in KAction::activated (this=0x0) at kaction.moc:171
#23 0x40cfdf0a in KAction::slotActivated (this=0xbfffdd84) at kaction.cpp:1102
#24 0x40d0ddff in KToggleAction::slotActivated (this=0x86d2dd8)
    at kactionclasses.cpp:230
#25 0x40cfd5d3 in KAction::slotButtonClicked (this=0x86d2dd8, state=3221216624)
    at kaction.cpp:1147
#26 0x40d0109b in KAction::qt_invoke (this=0x86d2dd8, _id=-1073750120, 
    _o=0xbfffdf30) at kaction.moc:214
#27 0x40d0de6b in KToggleAction::qt_invoke (this=0x86d2dd8, _id=16, 
    _o=0xbfffdf30) at kactionclasses.moc:110
#28 0x41427374 in QObject::activate_signal () from /usr/qt/3/lib/libqt-mt.so.3
#29 0x40dbf845 in KToolBarButton::buttonClicked (this=0x8747d40, t0=0, 
    t1=LeftButton) at ktoolbarbutton.moc:154
#30 0x40dbf9ec in KToolBarButton::mouseReleaseEvent (this=0x8747d40, 
    e=0xbfffe4f0) at ktoolbarbutton.cpp:479
#31 0x41460606 in QWidget::event () from /usr/qt/3/lib/libqt-mt.so.3
#32 0x413c478f in QApplication::internalNotify ()
   from /usr/qt/3/lib/libqt-mt.so.3
#33 0x413c4b53 in QApplication::notify () from /usr/qt/3/lib/libqt-mt.so.3
#34 0x40f575a1 in KApplication::notify (this=0x8380bf0, receiver=0x8747d40, 
    event=0xbfffe4f0) at kapplication.cpp:549
#35 0x4135d3b2 in QETWidget::translateMouseEvent ()
   from /usr/qt/3/lib/libqt-mt.so.3
#36 0x4135bc91 in QApplication::x11ProcessEvent ()
   from /usr/qt/3/lib/libqt-mt.so.3
#37 0x4136f5a6 in QEventLoop::processEvents () from /usr/qt/3/lib/libqt-mt.so.3
#38 0x413dae30 in QEventLoop::enterLoop () from /usr/qt/3/lib/libqt-mt.so.3
#39 0x413dad86 in QEventLoop::exec () from /usr/qt/3/lib/libqt-mt.so.3
#40 0x413c393f in QApplication::exec () from /usr/qt/3/lib/libqt-mt.so.3
#41 0x0809d1fe in main (argc=1, argv=0x8380bf0) at main.cpp:212
Comment 36 Paulo Moura Guedes 2005-05-02 19:55:05 UTC
Carsten, thanks for noticing.
I forgot to backport one patch. I will attach it here as KDE CVS repository is now read only, due to the move to Subversion.
Comment 37 Paulo Moura Guedes 2005-05-02 19:57:44 UTC
Created attachment 10876 [details]
Final patch against 3.4 branch that I forgot to commit

CVS HEAD branch has all the fixes in it. This patch was made against 3.4 branch
as I forgot to backport all the fixes.
Comment 38 Carsten Lohrke 2005-05-02 21:37:12 UTC
Thanks Paulo, works now. :)
Comment 39 Paulo Moura Guedes 2005-05-16 19:24:07 UTC
*** Bug 105662 has been marked as a duplicate of this bug. ***
Comment 40 Paulo Moura Guedes 2005-07-18 20:21:32 UTC
*** Bug 101318 has been marked as a duplicate of this bug. ***