• David Tseng's avatar
    Fixes crash in chrome.automation.getTree · 84d02556
    David Tseng authored
    [97932:775:0107/075158.384149:FATAL:automation_event_router.cc(184)] Check failed: desktop || ax_tree_id != ui::AXTreeIDUnknown().
    0   libbase.dylib                       0x0000000104b0d23f base::debug::CollectStackTrace(void**, unsigned long) + 31
    1   libbase.dylib                       0x0000000104819ca8 base::debug::StackTrace::StackTrace(unsigned long) + 72
    2   libbase.dylib                       0x0000000104819d2d base::debug::StackTrace::StackTrace(unsigned long) + 29
    3   libbase.dylib                       0x0000000104819d05 base::debug::StackTrace::StackTrace() + 37
    4   libbase.dylib                       0x0000000104872433 logging::LogMessage::~LogMessage() + 179
    5   libbase.dylib                       0x00000001048733b5 logging::LogMessage::~LogMessage() + 21
    6   libbase.dylib                       0x00000001048733d9 logging::LogMessage::~LogMessage() + 25
    7   libbase.dylib                       0x00000001047d730b logging::CheckError::~CheckError() + 43
    8   libbase.dylib                       0x00000001047d6dc5 logging::CheckError::~CheckError() + 21
    9   libchrome_dll.dylib                 0x0000000109cdc3bb extensions::AutomationEventRouter::Register(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int, ui::AXTreeID, bool) + 219
    10  libchrome_dll.dylib                 0x0000000109cdc2b2 extensions::AutomationEventRouter::RegisterListenerForOneTree(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int, ui::AXTreeID) + 98
    11  libchrome_dll.dylib                 0x0000000109ce3efb extensions::AutomationInternalEnableTabFunction::Run() + 1579
    12  libchrome_dll.dylib                 0x0000000109889e8b ExtensionFunction::RunWithValidation() + 539
    13  libchrome_dll.dylib                 0x0000000109894d1d extensions::ExtensionFunctionDispatcher::DispatchWithCallbackInternal(ExtensionHostMsg_Request_Params const&, content::RenderFrameHost*, int, base::RepeatingCallback<void (ExtensionFunction::ResponseType, base::ListValue const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)> const&) + 1741
    14  libchrome_dll.dylib                 0x0000000109893f4d extensions::ExtensionFunctionDispatcher::Dispatch(ExtensionHostMsg_Request_Params const&, content::RenderFrameHost*, int) + 637
    15  libchrome_dll.dylib                 0x0000000109921bd3 extensions::ExtensionWebContentsObserver::OnRequest(content::RenderFrameHost*, ExtensionHostMsg_Request_Params const&) + 211
    16  libchrome_dll.dylib                 0x0000000109923827 void IPC::DispatchToMethodImpl<extensions::ExtensionWebContentsObserver, void (extensions::ExtensionWebContentsObserver::*)(content::RenderFrameHost*, ExtensionHostMsg_Request_Params const&), content::RenderFrameHost, std::__1::tuple<ExtensionHostMsg_Request_Params>, 0ul>(extensions::ExtensionWebContentsObserver*, void (extensions::ExtensionWebContentsObserver::*)(content::RenderFrameHost*, ExtensionHostMsg_Request_Params const&), content::RenderFrameHost*, std::__1::tuple<ExtensionHostMsg_Request_Params>&&, std::__1::integer_sequence<unsigned long, 0ul>) + 167
    17  libchrome_dll.dylib                 0x00000001099236d8 std::__1::enable_if<(sizeof...(ExtensionHostMsg_Request_Params const&)) == (std::tuple_size<std::__1::decay<std::__1::tuple<ExtensionHostMsg_Request_Params> >::type>::value), void>::type IPC::DispatchToMethod<extensions::ExtensionWebContentsObserver, content::RenderFrameHost, ExtensionHostMsg_Request_Params const&, std::__1::tuple<ExtensionHostMsg_Request_Params> >(extensions::ExtensionWebContentsObserver*, void (extensions::ExtensionWebContentsObserver::*)(content::RenderFrameHost*, ExtensionHostMsg_Request_Params const&), content::RenderFrameHost*, std::__1::tuple<ExtensionHostMsg_Request_Params>&&) + 136
    18  libchrome_dll.dylib                 0x0000000109921a7f bool IPC::MessageT<ExtensionHostMsg_Request_Meta, std::__1::tuple<ExtensionHostMsg_Request_Params>, void>::Dispatch<extensions::ExtensionWebContentsObserver, extensions::ExtensionWebContentsObserver, content::RenderFrameHost, void (extensions::ExtensionWebContentsObserver::*)(content::RenderFrameHost*, ExtensionHostMsg_Request_Params const&)>(IPC::Message const*, extensions::ExtensionWebContentsObserver*, extensions::ExtensionWebContentsObserver*, content::RenderFrameHost*, void (extensions::ExtensionWebContentsObserver::*)(content::RenderFrameHost*, ExtensionHostMsg_Request_Params const&)) + 575
    19  libchrome_dll.dylib                 0x00000001099217e7 extensions::ExtensionWebContentsObserver::OnMessageReceived(IPC::Message const&, content::RenderFrameHost*) + 295
    20  libchrome_dll.dylib                 0x000000010f2a0216 extensions::ChromeExtensionWebContentsObserver::OnMessageReceived(IPC::Message const&, content::RenderFrameHost*) + 166
    21  libcontent.dylib                    0x00000001486eba12 content::WebContentsImpl::OnMessageReceived(content::RenderFrameHostImpl*, IPC::Message const&) + 706
    22  libcontent.dylib                    0x0000000147fcaa32 content::RenderFrameHostImpl::OnMessageReceived(IPC::Message const&) + 114
    23  libcontent.dylib                    0x00000001480cb8b4 content::RenderProcessHostImpl::OnMessageReceived(IPC::Message const&) + 228
    24  libipc.dylib                        0x000000013b853700 IPC::ChannelProxy::Context::OnDispatchMessage(IPC::Message const&) + 160
    25  libipc.dylib                        0x000000013b859cb7 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>, IPC::Message>(void (IPC::ChannelProxy::Context::*)(IPC::Message const&), scoped_refptr<IPC::ChannelProxy::Context>&&, IPC::Message&&) + 151
    26  libipc.dylib                        0x000000013b859b66 void base::internal::InvokeHelper<false, void>::MakeItSo<void (IPC::ChannelProxy::Context::*)(IPC::Message const&), scoped_refptr<IPC::ChannelProxy::Context>, IPC::Message>(void (IPC::ChannelProxy::Context::*&&)(IPC::Message const&), scoped_refptr<IPC::ChannelProxy::Context>&&, IPC::Message&&) + 102
    27  libipc.dylib                        0x000000013b859ad3 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::*)(IPC::Message const&), std::__1::tuple<scoped_refptr<IPC::ChannelProxy::Context>, IPC::Message>, 0ul, 1ul>(void (IPC::ChannelProxy::Context::*&&)(IPC::Message const&), std::__1::tuple<scoped_refptr<IPC::ChannelProxy::Context>, IPC::Message>&&, std::__1::integer_sequence<unsigned long, 0ul, 1ul>) + 99
    28  libipc.dylib                        0x000000013b859a5c base::internal::Invoker<base::internal::BindState<void (IPC::ChannelProxy::Context::*)(IPC::Message const&), scoped_refptr<IPC::ChannelProxy::Context>, IPC::Message>, void ()>::RunOnce(base::internal::BindStateBase*) + 76
    29  libbase.dylib                       0x00000001047cba2f base::OnceCallback<void ()>::Run() && + 111
    30  libbase.dylib                       0x00000001049e2fd2 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) + 1394
    31  libbase.dylib                       0x0000000104a36bc1 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::sequence_manager::LazyNow*) + 1569
    32  libbase.dylib                       0x0000000104a36343 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork() + 147
    
    R=dmazzoni@chromium.org
    
    Change-Id: I1dbef11639111a1c5723ad7f8636c0dc39c0f8eb
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2614842Reviewed-by: default avatarDominic Mazzoni <dmazzoni@chromium.org>
    Commit-Queue: David Tseng <dtseng@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#841300}
    84d02556
automation_internal_api.cc 26.1 KB