Post
Topic
Board Armory
Re: Armory - Discussion Thread
by
etotheipi
on 09/03/2013, 16:53:43 UTC
Bug report:
I just created my first paper wallet and tried to import it after printing it out on an offline machine (so I used the Armory Offline Client Wink). I clicked "Restore from paper wallet" and typed in all the letters, I checked it three times for mistakes. After I clicked the OK button it  happened nothing (Tried it with checked and unchecked "Encrypt wallet" checkbox.). I clicked one more time OK and the app gave me no feedback beside of the visual button click effect. Armory did not crash, I was able to click cancel and go back to the main window.

Can it be that this did not work because my wallet was already imported? If yes I would expect a msg like "This wallet is already imported". Then I would also know that the import has worked and would not have to remove the wallet first, import and encrypt it again to ensure the functioning of my paper wallet and the import function)

Armory version: 0.8.63
OS: Ubuntu 10.04 32bit

You should've gotten a message like you suggested.  I have billions of catches like that...

Can you go check the /home/username/.armory/armorylog.txt file on that computer and look for some useful information.  I know you can't send it to me from the offline computer, but the error message would be fine.  Usually when a button is supposed to do something, but doesn't do anything, there's usually errors kicking around under the hood.  

Here we go. This must it be:

2013-03-09 10:35 (ERROR) -- Traceback (most recent call last):
  File "/usr/share/armory/qtdialogs.py", line 3706, in verifyUserInput
    rawBin = easyType16_to_binary( str(self.lineEdits.text()).replace(' ','') )
  File "/usr/share/armory/qtdialogs.py", line 3872, in easyType16_to_binary
    return hex_to_binary(''.join([base16_to_hex_map[c] for c in b16str]))
  File "/usr/share/armory/armoryengine.py", line 897, in hex_to_binary
    return bout.decode('hex_codec')
  File "/usr/lib/python2.6/encodings/hex_codec.py", line 42, in hex_decode
    output = binascii.a2b_hex(input)
TypeError: Odd-length string

It looks like you are missing some characters in the typed field.  I guess I only catch errors in the typed letters, not missing letters.  I'll add a condition to catch that...

When you have typed enough letters, it should automatically respace the chars for you into blocks of 4 letters.  There's a total of 9 blocks on each line, so 36 letters.  If you don't have that.... let me know!