[Webkit-unassigned] [Bug 151513] REGRESSION(r192247): [GTK] ASSERTION FAILED: type == WebCore::ActionType || type == WebCore::CheckableActionType || type == WebCore::SeparatorType

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Nov 28 13:22:54 PST 2015


https://bugs.webkit.org/show_bug.cgi?id=151513

Michael Catanzaro <mcatanzaro at igalia.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|mcatanzaro at igalia.com       |webkit-unassigned at lists.web
                   |                            |kit.org

--- Comment #1 from Michael Catanzaro <mcatanzaro at igalia.com> ---
The problem is that the WebContextMenuItemGtk::WebContextMenuItemGtk(const WebContextMenuItemData& data) always fails if data is of type ContextMenuItemType::SubmenuType, because it chains up to the wrong WebContextMenuItemData constructor. There's no way to determine the right constructor to chain up to, so I added a new one accepting a WebContextMenuItemData and switched WebContextMenuItemGtk::WebContextMenuItemGtk(const WebContextMenuItemData& data) to use it instead:

WebContextMenuItemData::WebContextMenuItemData(const WebContextMenuItemData& data)
    : m_type(data.m_type)
    , m_action(data.m_action)
    , m_title(data.m_title)
{
    if (m_type == WebCore::SubmenuType)
        m_submenu = data.submenu();

    m_enabled = data.m_enabled;
    m_checked = data.m_checked;
}

That fixed the crash, but resulted in a submenu that is completely empty, which isn't good. Also, the GTK+ API test TestContextMenu is still crashing on the same assertion. This requires further investigation.

Also possibly problematic is the fact that our API allows removing a submenu (by passing NULL to webkit_context_menu_item_set_submenu) while leaving it with SubmenuType.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20151128/6a27901d/attachment.html>


More information about the webkit-unassigned mailing list