Closed TARS-bot closed 9 months ago
If the user selects a too high fee, the output could become smaller than dust or even negative. Both dscancel and cpfp are missing some checks: https://github.com/spesmilo/electrum/blob/ee24c74f192960f3e2d31ffb6b910e6bfb6bd90f/electrum/wallet.py#L1544 https://github.com/spesmilo/electrum/blob/ee24c74f192960f3e2d31ffb6b910e6bfb6bd90f/electrum/wallet.py#L1496
Good afternoon @ecdsa,
I just received another crash report related to this issue. The crash occured on Electrum 4.1.2. I'm not sure which versions of Electrum include the fix but this is the first report from anything newer than 4.0.9 since you closed the issue.
Could you please check if this issue really is resolved? Here is the traceback that I just collected:
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/gui/qt/channels_list.py", line 370, in new_channel_with_warning
self.new_channel_dialog()
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/gui/qt/channels_list.py", line 488, in new_channel_dialog
self.parent.open_channel(connect_str, funding_sat, 0)
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/gui/qt/main_window.py", line 1825, in open_channel
d = ConfirmTxDialog(window=self, make_tx=make_tx, output_value=funding_sat, is_sweep=False)
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/gui/qt/confirm_tx_dialog.py", line 177, in __init__
BlockingWaitingDialog(window, _("Preparing transaction..."), self.update_tx)
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/gui/qt/util.py", line 343, in __init__
task()
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/gui/qt/confirm_tx_dialog.py", line 86, in update_tx
self.tx = self.make_tx(fee_estimator)
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/gui/qt/main_window.py", line 1809, in <lambda>
fee_est=fee_est)
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/lnworker.py", line 1051, in mktx_for_open_channel
fee=fee_est)
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/wallet.py", line 1384, in make_unsigned_transaction
dust_threshold=self.dust_threshold())
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/coinchooser.py", line 297, in make_tx
base_weight = base_tx.estimated_weight()
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/transaction.py", line 940, in estimated_weight
total_tx_size = self.estimated_total_size()
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/transaction.py", line 920, in estimated_total_size
return len(self.serialize_to_network(estimate_size=True)) // 2
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/transaction.py", line 817, in serialize_to_network
txouts = var_int(len(outputs)) + ''.join(o.serialize_to_network().hex() for o in outputs)
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/transaction.py", line 817, in <genexpr>
txouts = var_int(len(outputs)) + ''.join(o.serialize_to_network().hex() for o in outputs)
File "/tmp/.mount_electrwqzyGN/usr/lib/python3.7/site-packages/electrum/transaction.py", line 108, in serialize_to_network
buf = int.to_bytes(self.value, 8, byteorder="little", signed=False)
OverflowError: int too big to convert
~ With robotic wishes
Good afternoon @ecdsa,
I just received another crash report related to this issue. The crash occured on Electrum 4.2.1. I'm not sure which versions of Electrum include the fix but this is the first report from anything newer than 4.1.2 since you closed the issue.
Could you please check if this issue really is resolved? Here is the traceback that I just collected:
Traceback (most recent call last):
File "electrum\gui\qt\swap_dialog.py", line 125, in uncheck_max
File "electrum\gui\qt\swap_dialog.py", line 198, in update
File "electrum\gui\qt\swap_dialog.py", line 248, in update_tx
File "electrum\gui\qt\swap_dialog.py", line 260, in _update_tx
File "electrum\wallet.py", line 1390, in make_unsigned_transaction
File "electrum\coinchooser.py", line 297, in make_tx
File "electrum\transaction.py", line 990, in estimated_weight
File "electrum\transaction.py", line 970, in estimated_total_size
File "electrum\transaction.py", line 867, in serialize_to_network
File "electrum\transaction.py", line 867, in <genexpr>
File "electrum\transaction.py", line 122, in serialize_to_network
OverflowError: int too big to convert
OverflowError: int too big to convert
~ With robotic wishes
Good afternoon @ecdsa,
I just received another crash report related to this issue. The crash occured on Electrum 4.3.2. I'm not sure which versions of Electrum include the fix but this is the first report from anything newer than 4.2.1 since you closed the issue.
Could you please check if this issue really is resolved? Here is the traceback that I just collected:
Traceback (most recent call last):
File "electrum/gui/qt/paytoedit.py", line 186, in _on_text_changed
File "electrum/gui/qt/paytoedit.py", line 243, in _check_text
File "electrum/gui/qt/paytoedit.py", line 272, in _parse_as_multiline
File "electrum/gui/qt/send_tab.py", line 191, in spend_max
File "electrum/gui/qt/send_tab.py", line 183, in <lambda>
File "electrum/wallet.py", line 1655, in make_unsigned_transaction
File "electrum/transaction.py", line 945, in estimated_size
File "electrum/transaction.py", line 1007, in estimated_weight
File "electrum/transaction.py", line 987, in estimated_total_size
File "electrum/transaction.py", line 884, in serialize_to_network
File "electrum/transaction.py", line 884, in <genexpr>
File "electrum/transaction.py", line 122, in serialize_to_network
OverflowError: int too big to convert
OverflowError: int too big to convert
~ With robotic wishes
I believe this was fixed at some point with more aggressive checks that amounts cannot be larger than TOTAL_COIN_SUPPLY_LIMIT_IN_BTC
.
Crash Report
This crash report was reported through the automatic crash reporting system 🤖
Traceback
Reporter
This issue was reported by 124 user(s):
Additional Information