Mac: cefclient --external-message-pump crash when clicking html-select element

Issue #2495 resolved
Yuval Levi created an issue

OSX El-capitan/Sierra tested on: cef_binary_3.3440.1805.gbe070f9_macosx64

Steps to reproduce: 1. Run cefclient --external-message-pump 2. Search for "select html" 3. choose 'HTML select tag - W3Schools' 4. push 'Try it yourself' button 5. click the combo-box on the right side of the page.

Comments (9)

  1. Marshall Greenblatt

    Call stack:

    [0928/155610.388858:FATAL:message_pump_mac.mm(764)] Check failed: g_app_pump. 
    0   Chromium Embedded Framework         0x000000011c4bfa6e base::debug::StackTrace::StackTrace(unsigned long) + 174
    1   Chromium Embedded Framework         0x000000011c4bfacd base::debug::StackTrace::StackTrace(unsigned long) + 29
    2   Chromium Embedded Framework         0x000000011c0fd9dc base::debug::StackTrace::StackTrace() + 28
    3   Chromium Embedded Framework         0x000000011c14bd0c logging::LogMessage::~LogMessage() + 460
    4   Chromium Embedded Framework         0x000000011c0e30b5 logging::LogMessage::~LogMessage() + 21
    5   Chromium Embedded Framework         0x000000011c52556d base::ScopedPumpMessagesInPrivateModes::ScopedPumpMessagesInPrivateModes() + 221
    6   Chromium Embedded Framework         0x000000011c525765 base::ScopedPumpMessagesInPrivateModes::ScopedPumpMessagesInPrivateModes() + 21
    7   Chromium Embedded Framework         0x0000000118c7a4f7 content::PopupMenuHelper::ShowPopupMenu(gfx::Rect const&, int, double, int, std::__1::vector<content::MenuItem, std::__1::allocator<content::MenuItem> > const&, bool, bool) + 727
    8   Chromium Embedded Framework         0x0000000118c9ebbd content::WebContentsViewMac::ShowPopupMenu(content::RenderFrameHost*, gfx::Rect const&, int, double, int, std::__1::vector<content::MenuItem, std::__1::allocator<content::MenuItem> > const&, bool, bool) + 461
    9   Chromium Embedded Framework         0x0000000118c9ec7a non-virtual thunk to content::WebContentsViewMac::ShowPopupMenu(content::RenderFrameHost*, gfx::Rect const&, int, double, int, std::__1::vector<content::MenuItem, std::__1::allocator<content::MenuItem> > const&, bool, bool) + 138
    10  Chromium Embedded Framework         0x0000000117a6e882 content::RenderFrameHostImpl::OnShowPopup(FrameHostMsg_ShowPopup_Params const&) + 306
    11  Chromium Embedded Framework         0x0000000117c48b0d void base::DispatchToMethodImpl<content::RenderFrameHostImpl*, void (content::RenderFrameHostImpl::*)(FrameHostMsg_ShowPopup_Params const&), std::__1::tuple<FrameHostMsg_ShowPopup_Params>, 0ul>(content::RenderFrameHostImpl* const&, void (content::RenderFrameHostImpl::*)(FrameHostMsg_ShowPopup_Params const&), std::__1::tuple<FrameHostMsg_ShowPopup_Params>&&, std::__1::integer_sequence<unsigned long, 0ul>) + 157
    12  Chromium Embedded Framework         0x0000000117c48a68 void base::DispatchToMethod<content::RenderFrameHostImpl*, void (content::RenderFrameHostImpl::*)(FrameHostMsg_ShowPopup_Params const&), std::__1::tuple<FrameHostMsg_ShowPopup_Params> >(content::RenderFrameHostImpl* const&, void (content::RenderFrameHostImpl::*)(FrameHostMsg_ShowPopup_Params const&), std::__1::tuple<FrameHostMsg_ShowPopup_Params>&&) + 104
    13  Chromium Embedded Framework         0x0000000117c489d2 void IPC::DispatchToMethod<content::RenderFrameHostImpl, void (content::RenderFrameHostImpl::*)(FrameHostMsg_ShowPopup_Params const&), void, std::__1::tuple<FrameHostMsg_ShowPopup_Params> >(content::RenderFrameHostImpl*, void (content::RenderFrameHostImpl::*)(FrameHostMsg_ShowPopup_Params const&), void*, std::__1::tuple<FrameHostMsg_ShowPopup_Params>&&) + 114
    14  Chromium Embedded Framework         0x0000000117a6e6ca bool IPC::MessageT<FrameHostMsg_ShowPopup_Meta, std::__1::tuple<FrameHostMsg_ShowPopup_Params>, void>::Dispatch<content::RenderFrameHostImpl, content::RenderFrameHostImpl, void, void (content::RenderFrameHostImpl::*)(FrameHostMsg_ShowPopup_Params const&)>(IPC::Message const*, content::RenderFrameHostImpl*, content::RenderFrameHostImpl*, void*, void (content::RenderFrameHostImpl::*)(FrameHostMsg_ShowPopup_Params const&)) + 538
    15  Chromium Embedded Framework         0x0000000117a5f0c9 content::RenderFrameHostImpl::OnMessageReceived(IPC::Message const&) + 6057
    16  Chromium Embedded Framework         0x000000011838b6c3 content::RenderProcessHostImpl::OnMessageReceived(IPC::Message const&) + 835
    17  Chromium Embedded Framework         0x000000011d082855 IPC::ChannelProxy::Context::OnDispatchMessage(IPC::Message const&) + 149
    18  Chromium Embedded Framework         0x000000011d088b1f void base::internal::FunctorTraits<void (IPC::ChannelProxy::Context::*)(IPC::Message const&), void>::Invoke<void (IPC::ChannelProxy::Context::*)(IPC::Message const&), scoped_refptr<IPC::ChannelProxy::Context> const&, IPC::Message const&>(void (IPC::ChannelProxy::Context::*)(IPC::Message const&), scoped_refptr<IPC::ChannelProxy::Context> const&&&, IPC::Message const&&&) + 143
    19  Chromium Embedded Framework         0x000000011d088a4f void base::internal::InvokeHelper<false, void>::MakeItSo<void (IPC::ChannelProxy::Context::* const&)(IPC::Message const&), scoped_refptr<IPC::ChannelProxy::Context> const&, IPC::Message const&>(void (IPC::ChannelProxy::Context::* const&&&)(IPC::Message const&), scoped_refptr<IPC::ChannelProxy::Context> const&&&, IPC::Message const&&&) + 95
    20  Chromium Embedded Framework         0x000000011d0889dd void base::internal::Invoker<base::internal::BindState<void (IPC::ChannelProxy::Context::*)(IPC::Message const&), scoped_refptr<IPC::ChannelProxy::Context>, IPC::Message>, void ()>::RunImpl<void (IPC::ChannelProxy::Context::* const&)(IPC::Message const&), std::__1::tuple<scoped_refptr<IPC::ChannelProxy::Context>, IPC::Message> const&, 0ul, 1ul>(void (IPC::ChannelProxy::Context::* const&&&)(IPC::Message const&), std::__1::tuple<scoped_refptr<IPC::ChannelProxy::Context>, IPC::Message> const&&&, std::__1::integer_sequence<unsigned long, 0ul, 1ul>) + 125
    21  Chromium Embedded Framework         0x000000011d0888dc base::internal::Invoker<base::internal::BindState<void (IPC::ChannelProxy::Context::*)(IPC::Message const&), scoped_refptr<IPC::ChannelProxy::Context>, IPC::Message>, void ()>::Run(base::internal::BindStateBase*) + 44
    22  Chromium Embedded Framework         0x0000000113c8ea1c base::OnceCallback<void ()>::Run() && + 92
    23  Chromium Embedded Framework         0x000000011c111c59 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) + 1033
    24  Chromium Embedded Framework         0x000000011c1c334f base::MessageLoop::RunTask(base::PendingTask*) + 1199
    25  Chromium Embedded Framework         0x000000011c1c376f base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) + 95
    26  Chromium Embedded Framework         0x000000011c1c3c9a base::MessageLoop::DoWork() + 490
    27  Chromium Embedded Framework         0x000000011b8d52b7 (anonymous namespace)::MessagePumpExternal::DirectRunWork(base::MessagePump::Delegate*) + 55
    28  Chromium Embedded Framework         0x000000011b8d5055 (anonymous namespace)::MessagePumpExternal::Run(base::MessagePump::Delegate*) + 69
    29  Chromium Embedded Framework         0x000000011c1c29fc base::MessageLoop::Run(bool) + 556
    30  Chromium Embedded Framework         0x000000011c28b4be base::RunLoop::Run() + 606
    31  Chromium Embedded Framework         0x000000011c28c812 base::RunLoop::RunUntilIdle() + 210
    32  Chromium Embedded Framework         0x000000011b8f77b8 CefDoMessageLoopWork() + 344
    33  Chromium Embedded Framework         0x0000000111f2d119 cef_do_message_loop_work + 9
    34  cefclient                           0x0000000105939a2a cef_do_message_loop_work + 10
    35  cefclient                           0x000000010581f199 CefDoMessageLoopWork() + 9
    36  cefclient                           0x00000001056fbb00 client::MainMessageLoopExternalPump::PerformMessageLoopWork() + 64
    37  cefclient                           0x00000001056fb939 client::MainMessageLoopExternalPump::DoWork() + 25
    38  cefclient                           0x00000001056fb8c1 client::MainMessageLoopExternalPump::OnScheduleWork(long long) + 305
    39  cefclient                           0x00000001056fc5e8 client::MainMessageLoopExternalPumpMac::HandleScheduleWork(long long) + 40
    40  cefclient                           0x00000001056fc5b7 -[EventHandler scheduleWork:] + 71
    41  Foundation                          0x00007fff3cf8b2b5 __NSThreadPerformPerform + 334
    42  CoreFoundation                      0x00007fff3ae72a61 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
    43  CoreFoundation                      0x00007fff3af2c47c __CFRunLoopDoSource0 + 108
    44  CoreFoundation                      0x00007fff3ae554c0 __CFRunLoopDoSources0 + 208
    45  CoreFoundation                      0x00007fff3ae5493d __CFRunLoopRun + 1293
    46  CoreFoundation                      0x00007fff3ae541a3 CFRunLoopRunSpecific + 483
    47  HIToolbox                           0x00007fff3a13cd96 RunCurrentEventLoopInMode + 286
    48  HIToolbox                           0x00007fff3a13cb06 ReceiveNextEventCommon + 613
    49  HIToolbox                           0x00007fff3a13c884 _BlockUntilNextEventMatchingListInModeWithFilter + 64
    50  AppKit                              0x00007fff383efa73 _DPSNextEvent + 2085
    51  AppKit                              0x00007fff38b85e34 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 3044
    52  AppKit                              0x00007fff383e4885 -[NSApplication run] + 764
    53  cefclient                           0x00000001056fc8ce client::MainMessageLoopExternalPumpMac::Run() + 46
    54  cefclient                           0x00000001057c7fee client::(anonymous namespace)::RunMain(int, char**) + 1774
    55  cefclient                           0x00000001057c78f2 main + 34
    56  libdyld.dylib                       0x00007fff6315e015 start + 1
    57  ???                                 0x0000000000000002 0x0 + 2
    
  2. Log in to comment