spesmilo / electrum

Electrum Bitcoin Wallet
https://electrum.org
MIT License
7.22k stars 3.02k forks source link

Pressing tab in 4.5.4 results in a segmentation fault #9032

Open hhartzer opened 2 months ago

hhartzer commented 2 months ago

Hi Electrum Team,

Thank you for an awesome Bitcoin wallet! Unfortunately, I'm now having some major issues with it.

Pressing tab in 4.5.4 results in a segmentation fault. Also, sending Bitcoin. No issues with 4.4.6. This is on FreeBSD using Wayland.

Output of setting up a new testnet wallet, then pressing tab on the main screen.

python3.9 -X dev -X tracemalloc /usr/local/bin/electrum -v --testnet 2>&1 | tee electrum.log

electrum.log

Related: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=278397

Thank you!

ecdsa commented 2 months ago

note: pressing tab while the cursor is in the "payto" field may trigger some network events.

accumulator commented 1 month ago

log looks quite normal, but this part is notable:

97.72 | I | i/interface.[testnet.aranguren.org:51002] | set blockchain with height 2806197
 97.72 | I | i/interface.[testnet.aranguren.org:51002] | can't connect 2806124
 97.72 | I | i/interface.[testnet.aranguren.org:51002] | requesting block header 2806123 in mode backward
 97.96 | I | i/interface.[testnet.aranguren.org:51002] | exiting backward mode at 2806123
 97.96 | I | i/interface.[testnet.aranguren.org:51002] | binary step. good 2806123, bad 2806124, height 2806123
 97.96 | I | i/interface.[testnet.aranguren.org:51002] | requesting block header 2806123 in mode binary
 98.19 | I | i/interface.[testnet.aranguren.org:51002] | binary search exited. good 2806123, bad 2806124
 98.19 | I | i/interface.[testnet.aranguren.org:51002] | new fork at bad height 2806124

edit: looking a bit further this doesn't seem to be relevant to this issue

hhartzer commented 1 month ago

Thanks for taking a look!

I ended up reverting to 4.4.6. I was able to send Bitcoin, however pressing tab results in the segmentation fault.

This must be a dependency related issue for the tab segementation fault, and a different issue for sending Bitcoin (as far as I can tell).

SomberNight commented 1 month ago

Where/when exactly do you press "tab" for the segfault to trigger? In your log, it looks like ~as soon as the main wallet window opened, the program segfaulted. Did you simply immediately press tab when than window opened?

Could you test with a different version of qt5/pyqt5?

Could you test with x11/xwayland, instead of wayland? E.g. maybe try setting this env var: QT_QPA_PLATFORM=xcb ./run_electrum

While electrum runs now, it stills segfaults when I try to send Bitcoin.

When exactly does that segfault happen? I imagine it occurs when e.g. clicking a specific button?

hhartzer commented 1 month ago

I get segfaults in the list of transactions, or when trying to send Bitcoin. Possibly in other areas as well.

It segfaulted for me with QT_QPA_PLATFORM=xcb as well.

Will report back later with more testing. Thank you for your help!