Skip to content

gui: crash if encrypt / change passphrase window is open and wallet is unloaded #15310

@fanquake

Description

@fanquake

Using master @ cb35f1d

Run bitcoin-qt, and open either the Encrypt Wallet or Change Passphrase window.
Unload the wallet. ie src/bitcoin-cli unloadwallet

* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
  * frame #0: 0x00007fff5ba9523e libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x00007fff5bb4bc1c libsystem_pthread.dylib`pthread_kill + 285
    frame #2: 0x00007fff5b9fe1c9 libsystem_c.dylib`abort + 127
    frame #3: 0x00007fff5bb0d6e2 libsystem_malloc.dylib`malloc_vreport + 545
    frame #4: 0x00007fff5bb0d4a3 libsystem_malloc.dylib`malloc_report + 152
    frame #5: 0x0000000101ef9e90 QtCore`QObjectPrivate::deleteChildren() + 224
    frame #6: 0x00000001012439e2 QtWidgets`QWidget::~QWidget() + 1058
    frame #7: 0x00000001000ddc8c bitcoin-qt`WalletView::~WalletView() [inlined] WalletView::~WalletView(this=0x0000000159d976e0) at walletview.cpp:87 [opt]
    frame #8: 0x00000001000ddc87 bitcoin-qt`WalletView::~WalletView() [inlined] WalletView::~WalletView(this=0x0000000159d976e0) at walletview.cpp:86 [opt]
    frame #9: 0x00000001000ddc87 bitcoin-qt`WalletView::~WalletView(this=0x0000000159d976e0) at walletview.cpp:86 [opt]
    frame #10: 0x00000001000d42f8 bitcoin-qt`WalletFrame::removeWallet(this=0x000000010eaa4130, wallet_model=<unavailable>) at walletframe.cpp:98 [opt]
    frame #11: 0x000000010001f5b6 bitcoin-qt`BitcoinGUI::removeWallet(this=0x0000000108dc8bb0, walletModel=<unavailable>) at bitcoingui.cpp:611 [opt]
    frame #12: 0x0000000101f01d7b QtCore`QMetaObject::activate(QObject*, int, int, void**) + 2219
    frame #13: 0x00000001000ef3ff bitcoin-qt`WalletController::walletRemoved(this=<unavailable>, _t1=<unavailable>) at moc_walletcontroller.cpp:206 [opt]
    frame #14: 0x00000001000d2f46 bitcoin-qt`WalletController::removeAndDeleteWallet(this=0x0000000159d31a00, wallet_model=0x0000000122f44f80) at walletcontroller.cpp:91 [opt]
    frame #15: 0x0000000101f01d7b QtCore`QMetaObject::activate(QObject*, int, int, void**) + 2219
    frame #16: 0x0000000101efa801 QtCore`QObject::event(QEvent*) + 753
    frame #17: 0x0000000101218f8d QtWidgets`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 269
    frame #18: 0x000000010121a392 QtWidgets`QApplication::notify(QObject*, QEvent*) + 594

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions