Reviewed by Adele and Tim Omernick.
authormjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 22 Jul 2006 05:31:07 +0000 (05:31 +0000)
committermjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 22 Jul 2006 05:31:07 +0000 (05:31 +0000)
commitc8309ad163be3fc5c63bf516713aa587f975ad7b
treed2d942252ce45da6d4cfa833ad560b84c0fb920f
parentd70fe6183b9328f845c21ee6eeac9031136d5106
    Reviewed by Adele and Tim Omernick.

        <rdar://problem/4641004> 9A224: Safari crashes in WebCore::RenderMenuList::showPopup when changing a input select field to input text field

        Couldn't figure out how to make layout test, here's a manual test:
        * manual-tests/remove-select-onchange.html: Added.

        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::showPopup): Don't add the RenderPopupMenu to the render
        tree so it doesn't get destroyed if we do.

        The remaining changes are to let the RenderPopupMenu know its menu list w/o having
        to be in the render tree:

        * rendering/RenderPopupMenu.cpp:
        (WebCore::RenderPopupMenu::RenderPopupMenu):
        * rendering/RenderPopupMenu.h:
        (WebCore::RenderPopupMenu::menuList):
        * rendering/RenderPopupMenuMac.h:
        * rendering/RenderPopupMenuMac.mm:
        (WebCore::RenderPopupMenuMac::RenderPopupMenuMac):
        * rendering/RenderPopupMenuWin.h:
        (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
        * rendering/RenderTheme.h:
        * rendering/RenderThemeMac.h:
        * rendering/RenderThemeMac.mm:
        (WebCore::RenderThemeMac::createPopupMenu):
        * rendering/RenderThemeWin.cpp:
        (WebCore::RenderThemeWin::createPopupMenu):
        * rendering/RenderThemeWin.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15571 268f45cc-cd09-0410-ab3c-d52691b4dbfc
13 files changed:
WebCore/ChangeLog
WebCore/manual-tests/remove-select-onchange.html [new file with mode: 0644]
WebCore/rendering/RenderMenuList.cpp
WebCore/rendering/RenderPopupMenu.cpp
WebCore/rendering/RenderPopupMenu.h
WebCore/rendering/RenderPopupMenuMac.h
WebCore/rendering/RenderPopupMenuMac.mm
WebCore/rendering/RenderPopupMenuWin.h
WebCore/rendering/RenderTheme.h
WebCore/rendering/RenderThemeMac.h
WebCore/rendering/RenderThemeMac.mm
WebCore/rendering/RenderThemeWin.cpp
WebCore/rendering/RenderThemeWin.h