Revision 567404
Go back to digest for 30th July 2006Bug Fixes in KDE Base
Nikolas Zimmermann committed changes in /branches/work/unity/WebKit/WebCore/platform:
Fix bug currently causing kde.org to crash.
The ScrollViewQt constructor uses "if (1 ||isFrameView())" to determine when
to construct a CanvasQt. CanvasQt assumes that the passed "ScrollView" object
is static castable to a "FrameView" -> as it's not, it'll crash!
The problem is that isFrameView() can't be accessed in the ctor yet, when
operating on FrameView objects as the FrameView ctor is not yet called.
(as detected by Zack (tm) )
Solution: Add a non-virtual init() function to ScrollView, call it from
the FrameQt object, afer constructing FrameView objects. Now isFrameView()
properly returns true, and the CanvasQt magically works fine ;-)
Please review, kde.org and test/crashOne.html work again w/o crashes on destruction.
File Changes
Modified 3 files
- /branches/work/unity/WebKit/WebCore/platform
- /ScrollView.h
- /qt/FrameQt.cpp
- /qt/ScrollViewQt.cpp
3 files changed in total