Parse amounts from CSV with Decimal and not float.
This fixes a bug where amounts are read from a CSV file incorrectly due to floating point representation error. For example, the string 0.009 will be parsed as 0.00899999, and then converted to 899999, resulting in one fewer satoshi being sent as part of the transaction generated from the CSV file.
This commit is contained in:
parent
342faeeedd
commit
acec9c2b43
|
@ -1882,7 +1882,7 @@ class ElectrumWindow(QMainWindow):
|
||||||
try:
|
try:
|
||||||
for row in csvReader:
|
for row in csvReader:
|
||||||
address = row[0]
|
address = row[0]
|
||||||
amount = float(row[1])
|
amount = Decimal(row[1])
|
||||||
amount = int(100000000*amount)
|
amount = int(100000000*amount)
|
||||||
outputs.append((address, amount))
|
outputs.append((address, amount))
|
||||||
except (ValueError, IOError, os.error), reason:
|
except (ValueError, IOError, os.error), reason:
|
||||||
|
|
Loading…
Reference in New Issue