fix tree corruption due to recalcStyle

Dirk Mueller mueller at kde.org
Sat Feb 21 05:08:26 CET 2004


On Sunday 18 January 2004 20:51, David Hyatt wrote:

> I don't understand this patch.  Is the render object actually trashed?

No, the problem is that the ::attach of HTMLObjectImpl might trigger a 
recalcStyle, which in turn might decide to ::detach() the HTMLObjectImpl that 
is currently nested in ::attach() and re-do ::attach(), because it thinks it 
has to do that since the display() type changed. Things go rapidly downhill 
afterwards. This patch protects against this recursion. 

I agree about your source comment that this method has to vanish rather sooner 
than later. It seems however that you already decided for the 
incremental_relayout hack (how far did you get it working so far?) instead of 
doing something that is maybe 2% less efficient, but 20% less code and 50% 
more stable. 


Dirk


More information about the Khtml-devel mailing list