Author

Topic: Armory silently fails on unrecognized character in address (Read 664 times)

full member
Activity: 123
Merit: 100
Thanks for the report.  I will add this fix in. If we get enough of these minor fixes we will release a 0.93.2, otherwise the fix will show up in 0.94.
hero member
Activity: 672
Merit: 504
a.k.a. gurnec on GitHub
It's an old issue:

https://bitcointalksearch.org/topic/m.4446993

I'm not sure if it's already corrected with the newest version. Which armory version are you running?

OP's particular issue doesn't look like it was fixed, but the fix is just a small change. Modify this line:
Code:
addrStr = str(self.widgetTable[row]['QLE_ADDR'].text()).strip()

to something like this:
Code:
addrStr = unicode(self.widgetTable[row]['QLE_ADDR'].text()).strip().encode(errors='replace')

or this if you'd rather use Qt's whitespace stripper instead of Python's (both seem to work for OP's example):
Code:
addrStr = unicode(self.widgetTable[row]['QLE_ADDR'].text().trimmed()).encode(errors='replace')

If an Armory dev doesn't happen to notice this thread, it'd make sense to open an issue on GitHub.
legendary
Activity: 2044
Merit: 1055
It's an old issue:

https://bitcointalksearch.org/topic/m.4446993

I'm not sure if it's already corrected with the newest version. Which armory version are you running?
sr. member
Activity: 250
Merit: 253
I copy/pasted an address from a page, and it included the character U+2028 (LINE SEPARATOR) at the end. When I clicked Send, it did nothing visible and logged this:

Code:
2015-04-07 20:19 (ERROR) -- Traceback (most recent call last):
  File "ui\TxFrames.pyc", line 758, in createTxAndBroadcast
  File "ui\TxFrames.pyc", line 429, in validateInputsGetUSTX
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2028' in position 33: ordinal not in range(128)

Being a whitespace character, and having no visible error message, it wasn't easy to realize that I had an extra character at the end. I would expect it either to work or to tell me there's a problem with the address.
Jump to: