Removed hard coded purpose and coin_type (provided by Wallet.get_address_index)

Only look up address when not a coinbase transaction
This commit is contained in:
Chris Rico 2014-08-28 05:13:03 -05:00
parent 94a5d26013
commit 49c2ba5b12
1 changed files with 8 additions and 8 deletions

View File

@ -179,7 +179,7 @@ class TrezorWallet(NewWallet):
def address_id(self, address):
account_id, (change, address_index) = self.get_address_index(address)
return "44'/0'/%s'/%d/%d" % (account_id, change, address_index)
return "%s/%d/%d" % (account_id, change, address_index)
def create_main_account(self, password):
self.create_account('Main account', None) #name, empty password
@ -262,6 +262,10 @@ class TrezorWallet(NewWallet):
for txinput in tx.inputs:
txinputtype = types.TxInputType()
if ('is_coinbase' in txinput and txinput['is_coinbase']):
prev_hash = "\0"*32
prev_index = 0xffffffff # signed int -1
else:
address = txinput['address']
try:
address_path = self.address_id(address)
@ -269,10 +273,6 @@ class TrezorWallet(NewWallet):
txinputtype.address_n.extend(address_n)
except: pass
if ('is_coinbase' in txinput and txinput['is_coinbase']):
prev_hash = "\0"*32
prev_index = 0xffffffff # signed int -1
else:
prev_hash = unhexlify(txinput['prevout_hash'])
prev_index = txinput['prevout_n']