Skip to content

Intermittent crash on accessing DApps on Android #28015

Closed
brave/brave-core
#16841

Description

I found that crash on GPS on nightly 1.49.x, but it exists in the release channel as well. Basically the functionality is called when a DApp website is visited and pings our API and we want to show a wallet icon in the URL bar. I cannot replicate that crash. Just make sure that a wallet icon is shown if you go for example to
https://www.cryptokitties.co/

Stack trace:

Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  00000000041df430  brave_wallet::WalletInteractionDetected(content::WebContents*)                    ../../brave/browser/brave_wallet/brave_wallet_provider_delegate_impl_helper_android.cc:39:59
  0000000007419f44  brave_wallet::EthereumProviderImpl::Request(base::Value, base::OnceCallback<void (base::Value, base::Value, bool, std::Cr::basic_string<char, std::Cr::char_traits<char>, std::Cr::allocator<char>> const&, bool)>)  ../../brave/components/brave_wallet/browser/ethereum_provider_impl.cc:1017:14
  000000000359dc30  brave_wallet::mojom::EthereumProviderStubDispatch::AcceptWithResponder(brave_wallet::mojom::EthereumProvider*, mojo::Message*, std::Cr::unique_ptr<mojo::MessageReceiverWithStatus, std::Cr::default_delete<mojo::MessageReceiverWithStatus>>)  gen/brave/components/brave_wallet/common/brave_wallet.mojom.cc:6189:13
  0000000007207640  brave_wallet::mojom::EthereumProviderStub<mojo::RawPtrImplRefTraits<brave_wallet::mojom::EthereumProvider>>::AcceptWithResponder(mojo::Message*, std::Cr::unique_ptr<mojo::MessageReceiverWithStatus, std::Cr::default_delete<mojo::MessageReceiverWithStatus>>)  gen/brave/components/brave_wallet/common/brave_wallet.mojom.h:3678:12
  v------>  mojo::InterfaceEndpointClient::HandleValidatedMessage(mojo::Message*)             ../../mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:956:56
  0000000004534264  mojo::InterfaceEndpointClient::HandleIncomingMessageThunk::Accept(mojo::Message*)  ../../mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:357:18
  00000000045377b0  mojo::MessageDispatcher::Accept(mojo::Message*)                                   ../../mojo/public/cpp/bindings/lib/message_dispatcher.cc:43:19
  00000000045354cc  mojo::InterfaceEndpointClient::HandleIncomingMessage(mojo::Message*)              ../../mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:694:20
  000000000453a2a4  mojo::internal::MultiplexRouter::ProcessIncomingMessage(mojo::internal::MultiplexRouter::MessageWrapper*, mojo::internal::MultiplexRouter::ClientCallBehavior, base::SequencedTaskRunner*)  ../../mojo/public/cpp/bindings/lib/multiplex_router.cc:1102:42
  0000000004539f64  mojo::internal::MultiplexRouter::Accept(mojo::Message*)                           ../../mojo/public/cpp/bindings/lib/multiplex_router.cc:716:7
  00000000045377b0  mojo::MessageDispatcher::Accept(mojo::Message*)                                   ../../mojo/public/cpp/bindings/lib/message_dispatcher.cc:43:19
  0000000004531b64  mojo::Connector::DispatchMessage(mojo::ScopedHandleBase<mojo::MessageHandle>)     ../../mojo/public/cpp/bindings/lib/connector.cc:561:49
  00000000045321b8  mojo::Connector::ReadAllAvailableMessages()                                       ../../mojo/public/cpp/bindings/lib/connector.cc:618:14
  00000000023b4cc0  base::RepeatingCallback<void (net::EffectiveConnectionType)>::Run(net::EffectiveConnectionType) const &  ../../base/functional/callback.h:309:12
  v------>  base::RepeatingCallback<void (unsigned int, mojo::HandleSignalsState const&)>::Run(unsigned int, mojo::HandleSignalsState const&) const &  ../../base/functional/callback.h:309:12
  00000000045479f4  mojo::SimpleWatcher::OnHandleReady(int, unsigned int, mojo::HandleSignalsState const&)  ../../mojo/public/cpp/system/simple_watcher.cc:278:14
  v------>  base::OnceCallback<void ()>::Run() &&                                             ../../base/functional/callback.h:174:12
  00000000042a6458  base::TaskAnnotator::RunTaskImpl(base::PendingTask&)                              ../../base/task/common/task_annotator.cc:155:32
  v------>  void base::TaskAnnotator::RunTask<base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::LazyNow*)::$_0>(perfetto::StaticString, base::PendingTask&, base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::LazyNow*)::$_0&&)  ../../base/task/common/task_annotator.h:84:5
  v------>  base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::LazyNow*)  ../../base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:449:23
  00000000042b867c  base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork()   ../../base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:300:30
  00000000042ea938  base::MessagePumpForUI::DoNonDelayedLooperWork(bool)                              ../../base/message_loop/message_pump_android.cc:285:33
  v------>  base::MessagePumpForUI::OnNonDelayedLooperCallback()                              ../../base/message_loop/message_pump_android.cc:271:3
  00000000042ea274  base::(anonymous namespace)::NonDelayedLooperCallback(int, int, void*)            ../../base/message_loop/message_pump_android.cc:75:9
  0000000000018028  android::Looper::pollInner(int)+1064                                              /system/lib64/libutils.so
  0000000000017b9c  android::Looper::pollOnce(int, int*, int*, void**)+116                            /system/lib64/libutils.so
  0000000000166e90  android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+48  /system/lib64/libandroid_runtime.so
  00000000002eb504  art_jni_trampoline+116                                                            /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat
  0000000000ad1848  android.os.MessageQueue.next+312                                                  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat
  0000000000acdc18  android.os.Looper.loopOnce+104                                                    /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat
  0000000000acda7c  android.os.Looper.loop+1148                                                       /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat
  00000000007d7dc8  android.app.ActivityThread.main+1480                                              /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat
  0000000000434600  art_quick_invoke_static_stub+576                                                  /apex/com.android.art/lib64/libart.so
  0000000000466d34  _jobject* art::InvokeMethod<(art::PointerSize)8>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned long)+1960  /apex/com.android.art/lib64/libart.so
  0000000000466564  art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobjectArray*) (.__uniq.165753521025965369065708152063621506277)+48  /apex/com.android.art/lib64/libart.so
  00000000002f1148  art_jni_trampoline+120                                                            /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat
  0000000000a356a0  com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run+144                   /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat
  0000000000a40544  com.android.internal.os.ZygoteInit.main+3604                                      /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat
  0000000000434600  art_quick_invoke_static_stub+576                                                  /apex/com.android.art/lib64/libart.so
  000000000057e378  art::JValue art::InvokeWithVarArgs<_jmethodID*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, std::__va_list)+900  /apex/com.android.art/lib64/libart.so
  00000000005f1d7c  art::JNI<true>::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, std::__va_list)+160  /apex/com.android.art/lib64/libart.so
  00000000000c0c04  _JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+124                     /system/lib64/libandroid_runtime.so
  00000000000cd470  android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+856  /system/lib64/libandroid_runtime.so
  0000000000002570  main+1304                                                                         /system/bin/app_process64
  00000000000854ec  __libc_init+100
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Type

No type

Projects

  • Status

    Done

Relationships

None yet

Development

No branches or pull requests

Issue actions