|
|
|
@ -255,6 +255,7 @@ def sign_tx(
|
|
|
|
|
outputs: Sequence[messages.TxOutputType],
|
|
|
|
|
details: Optional[messages.SignTx] = None,
|
|
|
|
|
prev_txes: Optional["TxCacheType"] = None,
|
|
|
|
|
payment_reqs: Sequence[messages.TxAckPaymentRequest] = (),
|
|
|
|
|
preauthorized: bool = False,
|
|
|
|
|
**kwargs: Any,
|
|
|
|
|
) -> Tuple[Sequence[Optional[bytes]], bytes]:
|
|
|
|
@ -354,8 +355,12 @@ def sign_tx(
|
|
|
|
|
else:
|
|
|
|
|
current_tx = this_tx
|
|
|
|
|
|
|
|
|
|
if res.request_type == R.TXPAYMENTREQ:
|
|
|
|
|
assert res.details.request_index is not None
|
|
|
|
|
msg = payment_reqs[res.details.request_index]
|
|
|
|
|
res = client.call(msg)
|
|
|
|
|
else:
|
|
|
|
|
msg = messages.TransactionType()
|
|
|
|
|
|
|
|
|
|
if res.request_type == R.TXMETA:
|
|
|
|
|
msg = copy_tx_meta(current_tx)
|
|
|
|
|
elif res.request_type in (R.TXINPUT, R.TXORIGINPUT):
|
|
|
|
@ -364,7 +369,9 @@ def sign_tx(
|
|
|
|
|
elif res.request_type == R.TXOUTPUT:
|
|
|
|
|
assert res.details.request_index is not None
|
|
|
|
|
if res.details.tx_hash:
|
|
|
|
|
msg.bin_outputs = [current_tx.bin_outputs[res.details.request_index]]
|
|
|
|
|
msg.bin_outputs = [
|
|
|
|
|
current_tx.bin_outputs[res.details.request_index]
|
|
|
|
|
]
|
|
|
|
|
else:
|
|
|
|
|
msg.outputs = [current_tx.outputs[res.details.request_index]]
|
|
|
|
|
elif res.request_type == R.TXORIGOUTPUT:
|
|
|
|
|