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

java.lang.NullPointerException entering "account extended public key" menu #7416

Open
532910 opened this issue May 7, 2024 · 3 comments
Open
Assignees

Comments

@532910
Copy link

532910 commented May 7, 2024

steps to reproduce:

  1. create watch only wallet importing xpub from electrum
  2. Settings -> Manage Wallets -> Watch Wallet 1 -> Public Keys -> Account Extended Public Key
05-07 20:49:08.828  7312  7312 E AndroidRuntime: FATAL EXCEPTION: main
05-07 20:49:08.828  7312  7312 E AndroidRuntime: Process: io.horizontalsystems.bankwallet, PID: 7312
05-07 20:49:08.828  7312  7312 E AndroidRuntime: java.lang.IllegalStateException: Hardened key requires parent private key
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at io.horizontalsystems.hdwalletkit.HDKeyDerivation.deriveChildKey(HDKeyDerivation.java:88)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at io.horizontalsystems.hdwalletkit.HDKeychain.getKeyByPath(HDKeychain.kt:45)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at io.horizontalsystems.bankwallet.modules.manageaccount.showextendedkey.ShowExtendedKeyViewModel.getExtendedKey(ShowExtendedKeyViewModel.kt:47)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at io.horizontalsystems.bankwallet.modules.manageaccount.showextendedkey.ShowExtendedKeyFragmentKt$ShowExtendedKeyScreen$2.invoke(ShowExtendedKeyFragment.kt:178)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at io.horizontalsystems.bankwallet.modules.manageaccount.showextendedkey.ShowExtendedKeyFragmentKt$ShowExtendedKeyScreen$2.invoke(ShowExtendedKeyFragment.kt:102)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.material.ModalBottomSheetKt$ModalBottomSheetLayout$2.invoke(ModalBottomSheet.kt:576)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.material.ModalBottomSheetKt$ModalBottomSheetLayout$2.invoke(ModalBottomSheet.kt:573)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:118)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.foundation.layout.BoxWithConstraintsKt$BoxWithConstraints$1$1$measurables$1.invoke(BoxWithConstraints.kt:69)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.foundation.layout.BoxWithConstraintsKt$BoxWithConstraints$1$1$measurables$1.invoke(BoxWithConstraints.kt:69)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.layout.LayoutNodeSubcompositionsState$subcompose$3$1$1.invoke(SubcomposeLayout.kt:989)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.layout.LayoutNodeSubcompositionsState$subcompose$3$1$1.invoke(SubcomposeLayout.kt:476)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.ActualJvm_jvmKt.invokeComposable(ActualJvm.jvm.kt:90)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.ComposerImpl.doCompose(Composer.kt:3302)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.ComposerImpl.composeContent$runtime_release(Composer.kt:3235)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.CompositionImpl.composeContent(Composition.kt:723)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.Recomposer.composeInitial$runtime_release(Recomposer.kt:1071)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.ComposerImpl$CompositionContextImpl.composeInitial$runtime_release(Composer.kt:3599)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.CompositionImpl.composeInitial(Composition.kt:631)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.CompositionImpl.setContent(Composition.kt:617)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.layout.LayoutNodeSubcompositionsState.subcomposeInto(SubcomposeLayout.kt:499)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.layout.LayoutNodeSubcompositionsState.subcompose(SubcomposeLayout.kt:471)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.layout.LayoutNodeSubcompositionsState.subcompose(SubcomposeLayout.kt:462)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.layout.LayoutNodeSubcompositionsState.subcompose(SubcomposeLayout.kt:446)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.layout.LayoutNodeSubcompositionsState$Scope.subcompose(SubcomposeLayout.kt:871)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.foundation.layout.BoxWithConstraintsKt$BoxWithConstraints$1$1.invoke-0kLqBqw(BoxWithConstraints.kt:69)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.foundation.layout.BoxWithConstraintsKt$BoxWithConstraints$1$1.invoke(BoxWithConstraints.kt:67)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.layout.LayoutNodeSubcompositionsState$createMeasurePolicy$1.measure-3p2s80s(SubcomposeLayout.kt:708)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:1617)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:36)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.layout.RootMeasurePolicy.measure-3p2s80s(RootMeasurePolicy.kt:38)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:1617)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:36)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.kt:1145)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:354)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureOnly(MeasureAndLayoutDelegate.kt:562)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureOnly(MeasureAndLayoutDelegate.kt:407)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:1058)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.View.measure(View.java:26504)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.View.measure(View.java:26504)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6980)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.View.measure(View.java:26504)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6980)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.View.measure(View.java:26504)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6980)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:760)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:833)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.View.measure(View.java:26504)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6980)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.View.measure(View.java:26504)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6980)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1608)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.LinearLayout.measureVertical(LinearLayout.java:878)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.View.measure(View.java:26504)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6980)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.View.measure(View.java:26504)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6980)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1608)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.LinearLayout.measureVertical(LinearLayout.java:878)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.View.measure(View.java:26504)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6980)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at com.android.internal.policy.DecorView.onMeasure(DecorView.java:760)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.View.measure(View.java:26504)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:4040)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:2656)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2962)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2369)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9309)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1231)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1239)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.Choreographer.doCallbacks(Choreographer.java:899)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.Choreographer.doFrame(Choreographer.java:832)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1214)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.os.Handler.handleCallback(Handler.java:942)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:99)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.os.Looper.loopOnce(Looper.java:201)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:288)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7930)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
05-07 20:49:08.828  7312  7312 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:854)
05-07 20:49:08.830  1660  7483 I DropBoxManagerService: add tag=data_app_crash isTagEnabled=true flags=0x2
05-07 20:49:08.830  1660  9199 W ActivityTaskManager:   Force finishing activity io.horizontalsystems.bankwallet/.modules.main.MainActivity
05-07 20:49:08.843  1660  1738 I ActivityManager: Showing crash dialog for package io.horizontalsystems.bankwallet u0

0.38.3 (106) from fdroid
crdroid 9.7

@rafaelekol
Copy link
Member

@532910 We are not supporting Electrum custom seeds. I tried to reproduce your crash, but I get validation error when Im trying to submit Electrum public key as a Watch key in Unstoppable wallet.

@532910
Copy link
Author

532910 commented May 8, 2024

This issue is not about electrum custom seed, but about public key in bip32 format (as shown in electrum).

@rafaelekol
Copy link
Member

rafaelekol commented May 8, 2024

You are right, issue is not in seed.
Unfortunately UW not supporting watching public keys in bip32 format, because we can get enough information to derive addresses and watch them.

@abdrasulov abdrasulov added this to To Do in Version 0.39 via automation May 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

2 participants