Moved from https://github.com/bitcoin/bitcoin/issues/18643.
The GUI crashes on exceptions such as NonFatalCheckError
. I think it is more user friendly for a GUI to catch the exception and display it to the user, then abort the current action and leave the main window running.
I tested this by mutating the conditional in a CHECK_NONFATAL
.
0$ ./src/qt/bitcoin-qt
1QSocketNotifier: Can only be used with threads started with QThread
2
3
4************************
5EXCEPTION: 18NonFatalCheckError
6wallet/wallet.cpp:2636 (IsCurrentForAntiFeeSniping)
7Internal bug detected: '!chain.findBlock(block_hash, FoundBlock().time(block_time))'
8You may report this issue here: https://github.com/bitcoin/bitcoin/issues
9
10bitcoin in Runaway exception
11
12terminate called after throwing an instance of 'NonFatalCheckError'
13 what(): wallet/wallet.cpp:2636 (IsCurrentForAntiFeeSniping)
14Internal bug detected: '!chain.findBlock(block_hash, FoundBlock().time(block_time))'
15You may report this issue here: https://github.com/bitcoin/bitcoin/issues
16
17Aborted (core dumped)