Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash in PortfolioFragment #28452

Closed
SergeyZhukovsky opened this issue Feb 11, 2023 · 8 comments · Fixed by brave/brave-core#17162
Closed

Crash in PortfolioFragment #28452

SergeyZhukovsky opened this issue Feb 11, 2023 · 8 comments · Fixed by brave/brave-core#17162
Assignees
Labels
crash feature/web3/wallet Integrating Ethereum+ wallet support OS/Android Fixes related to Android browser functionality priority/P2 A bad problem. We might uplift this to the next planned release. QA Pass - Android ARM QA/Yes release-notes/include

Comments

@SergeyZhukovsky
Copy link
Member

I found that crash in GPS in 1.48.160. We need to fix and uplift it to a stable channel. As I understood looking on a crash stack it happens when we fetch a balance on Portfolio screen in wallet.

Exception java.lang.NullPointerException:
  at org.chromium.chrome.browser.crypto_wallet.util.TokenUtils.getUserAssetsFiltered (TokenUtils.java:79)
  at org.chromium.chrome.browser.crypto_wallet.util.TokenUtils.getUserOrAllTokensFiltered (TokenUtils.java:115)
  at org.chromium.chrome.browser.crypto_wallet.util.Utils.getTxExtraInfo (Utils.java:1527)
  at org.chromium.chrome.browser.crypto_wallet.util.PortfolioHelper.calculateBalances (PortfolioHelper.java:109)
  at org.chromium.chrome.browser.crypto_wallet.fragments.PortfolioFragment.lambda$updatePortfolioGetPendingTx$19 (PortfolioFragment.java:439)
  at org.chromium.chrome.browser.crypto_wallet.fragments.PortfolioFragment$$InternalSyntheticLambda$2$484b37846b5ccf3825f3207ea5d15a01ee215f3a5e3602f61b9737ec70817350$0.onChanged (PortfolioFragment.java:33)
  at org.chromium.chrome.browser.util.LiveDataUtil$1.onChanged (LiveDataUtil.java:17)
  at androidx.lifecycle.LiveData.considerNotify (LiveData.java:133)
  at androidx.lifecycle.MutableLiveData.considerNotify (MutableLiveData.java:30)
  at androidx.lifecycle.LiveData.dispatchingValue (LiveData.java:146)
  at androidx.lifecycle.MutableLiveData.dispatchingValue (MutableLiveData.java:16)
  at androidx.lifecycle.LiveData$ObserverWrapper.activeStateChanged (LiveData.java:483)
  at androidx.lifecycle.LiveData.observeForever (LiveData.java:234)
  at androidx.lifecycle.MutableLiveData.observeForever (MutableLiveData.java:27)
  at org.chromium.chrome.browser.util.LiveDataUtil.observeOnce (LiveDataUtil.java:13)
  at org.chromium.chrome.browser.crypto_wallet.fragments.PortfolioFragment.lambda$updatePortfolioGetPendingTx$20 (PortfolioFragment.java:431)
  at org.chromium.chrome.browser.crypto_wallet.fragments.PortfolioFragment$$InternalSyntheticLambda$1$c134bd43ccb5619d8b83779bb9ef5d7a50aeac465b9effd302b72478b30eb585$0.call$bridge (PortfolioFragment.java:45)
  at org.chromium.chrome.browser.app.domain.KeyringModel.getKeyringPerId (KeyringModel.java:247)
  at org.chromium.chrome.browser.crypto_wallet.fragments.PortfolioFragment.updatePortfolioGetPendingTx (PortfolioFragment.java:421)
  at org.chromium.chrome.browser.crypto_wallet.fragments.PortfolioFragment.lambda$setUpObservers$3 (PortfolioFragment.java:195)
  at org.chromium.chrome.browser.crypto_wallet.fragments.PortfolioFragment$$InternalSyntheticLambda$3$376baa504b705602c0c3178a9ebced4b462570a1e063c5bb6b1e1550caf6c946$0.onChanged$bridge (PortfolioFragment.java:267)
  at androidx.lifecycle.LiveData.considerNotify (LiveData.java:133)
  at androidx.lifecycle.MutableLiveData.considerNotify (MutableLiveData.java:30)
  at androidx.lifecycle.LiveData.dispatchingValue (LiveData.java:146)
  at androidx.lifecycle.MutableLiveData.dispatchingValue (MutableLiveData.java:16)
  at androidx.lifecycle.LiveData$ObserverWrapper.activeStateChanged (LiveData.java:483)
  at androidx.lifecycle.LiveData$LifecycleBoundObserver.onStateChanged (LiveData.java:440)
  at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent (LifecycleRegistry.kt:314)
  at androidx.lifecycle.LifecycleRegistry.forwardPass (LifecycleRegistry.kt:251)
  at androidx.lifecycle.LifecycleRegistry.sync (LifecycleRegistry.kt:287)
  at androidx.lifecycle.LifecycleRegistry.moveToState (LifecycleRegistry.kt:136)
  at androidx.lifecycle.LifecycleRegistry.handleLifecycleEvent (LifecycleRegistry.kt:119)
  at androidx.fragment.app.FragmentViewLifecycleOwner.handleLifecycleEvent (FragmentViewLifecycleOwner.java:100)
  at androidx.fragment.app.Fragment.performStart (Fragment.java:3184)
  at androidx.fragment.app.FragmentStateManager.start (FragmentStateManager.java:625)
  at androidx.fragment.app.FragmentStateManager.moveToExpectedState (FragmentStateManager.java:290)
  at androidx.fragment.app.FragmentStore.moveToExpectedState (FragmentStore.java:114)
  at androidx.fragment.app.FragmentManager.moveToState (FragmentManager.java:1433)
  at androidx.fragment.app.FragmentManagerImpl.moveToState (FragmentManagerImpl.java:58)
  at androidx.fragment.app.FragmentManager.dispatchStateChange (FragmentManager.java:2980)
  at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange (FragmentManagerImpl.java:34)
  at androidx.fragment.app.FragmentManager.dispatchStart (FragmentManager.java:2905)
  at androidx.fragment.app.FragmentController.dispatchStart (FragmentController.java:274)
  at androidx.fragment.app.FragmentActivity.onStart (FragmentActivity.java:359)
  at androidx.appcompat.app.AppCompatActivity.onStart (AppCompatActivity.java:251)
  at org.chromium.chrome.browser.init.AsyncInitializationActivity.onStart (AsyncInitializationActivity.java:490)
  at android.app.Instrumentation.callActivityOnStart (Instrumentation.java:1419)
  at android.app.Activity.performStart (Activity.java:7479)
  at android.app.ActivityThread.handleStartActivity (ActivityThread.java:3454)
  at android.app.servertransaction.TransactionExecutor.performLifecycleSequence (TransactionExecutor.java:180)
  at android.app.servertransaction.TransactionExecutor.cycleToPath (TransactionExecutor.java:165)
  at android.app.servertransaction.TransactionExecutor.executeLifecycleState (TransactionExecutor.java:142)
  at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:70)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2199)
  at android.os.Handler.dispatchMessage (Handler.java:112)
  at android.os.Looper.loop (Looper.java:216)
  at android.app.ActivityThread.main (ActivityThread.java:7625)
  at java.lang.reflect.Method.invoke (Method.java)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:524)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:987)
@kjozwiak
Copy link
Member

The above requires 1.48.164 or higher for 1.48.x verification 👍

@srirambv
Copy link
Contributor

Verification passed on Oppo Reno 5 with Android 13 running 1.48.166 x64 build

  • Verified no crash after setting up the wallet
  • Verified no crash when changing the time frame on graph
  • Verified no crash when changing network
  • Verified no crash on lock/unlocking the wallet
  • Verified no crash on both clean install and upgrade install
  • Verified no crash when restoring wallet from seed phrase

@atifnimran
Copy link

Help

@Pavneet-Sing
Copy link

Help

Hey @atifnimran , how can we help you? are you facing a this same crash? if yes or if you facing any issue then can you please share the details?
Would be great if you can create an android specific issue here: https://github.com/brave/brave-browser/issues/new?assignees=&labels=OS%2FAndroid&template=android.md&title=

@atifnimran
Copy link

Please help me my fund is not available on my account

@Pavneet-Sing
Copy link

Pavneet-Sing commented Mar 7, 2023

Please help me my fund is not available on my account

Brave provides community support (https://community.brave.com/) to help users and likely will require more details to help you so please create a community post via + New Topic with the details.

@atifnimran
Copy link

Please help

@Pavneet-Sing
Copy link

Please help

We can help but we won't be able to help without details. Please try posting this on https://community.brave.com/ with details and you will definitely get help from members, community ninjas and brave team to resolve the issue.
Please also look through existing issues that could probably help you to identify or resolve the issue.

https://community.brave.com/tag/funds-missing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
crash feature/web3/wallet Integrating Ethereum+ wallet support OS/Android Fixes related to Android browser functionality priority/P2 A bad problem. We might uplift this to the next planned release. QA Pass - Android ARM QA/Yes release-notes/include
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

6 participants