Bug 119697 - [testcase] Removing body children from HTMLTableElement leaves dangling firstBody pointer
Summary: [testcase] Removing body children from HTMLTableElement leaves dangling first...
Alias: None
Product: konqueror
Classification: Applications
Component: khtml (show other bugs)
Version: 3.5
Platform: Debian testing Linux
: NOR normal
Target Milestone: ---
Assignee: Maksim Orlovich
Depends on:
Reported: 2006-01-07 19:25 UTC by Vincent Ricard
Modified: 2006-03-05 00:43 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:

A testcase where append tr seems to fail. (984 bytes, text/html)
2006-01-07 19:27 UTC, Vincent Ricard

Note You need to log in before you can comment on or make changes to this bug.
Description Vincent Ricard 2006-01-07 19:25:54 UTC
Version:           3.5 (using KDE KDE 3.5.0)
Installed from:    Debian testing/unstable Packages
OS:                Linux

I have a table, in which i remove all tBodies.
I append a "tr" element to the table, but tBodies.length == 0.
(See the atteched test case)
Comment 1 Vincent Ricard 2006-01-07 19:27:57 UTC
Created attachment 14174 [details]
A testcase where append tr seems to fail.
Comment 2 Maksim Orlovich 2006-01-07 19:32:14 UTC
OK, time to get picky with the title :-)

This is also true of head/foot/etc. And I think in general, we do not update those right on DOM changes.
Comment 3 Maksim Orlovich 2006-03-05 00:43:44 UTC
SVN commit 515817 by orlovich:

Some signficant fixes in the table DOM code:
1. Properly keep track of alterations to DOM structure
so we do not end up with dangling or stale pointers
2. Properly implement logical order in insert/deleteRow.
   Also fix implicit body creation code for insertRow. 
   Essentially, improperly nested tr's are invisible to the DOM code
   (and in IE, they're even invisible on the screen!)
3. Be more robust, compatible with other browsers,
in handling of malformed dom-created tables:
    -Ignore <tr>'s directly under table in the rows collection
    -In tsection code do not assume only <tr>'s will be there
BUG: 119697
BUG: 100105

 M  +28 -46    html/html_miscimpl.cpp  
 M  +4 -2      html/html_miscimpl.h  
 M  +200 -161  html/html_tableimpl.cpp  
 M  +90 -8     html/html_tableimpl.h  
 M  +3 -3      xml/dom_nodeimpl.cpp  
 M  +2 -1      xml/dom_nodeimpl.h