[wallet] Build output lookup inside complete transaction
To avoid the caller having to do it.
This commit is contained in:
		
							parent
							
								
									fcc408f346
								
							
						
					
					
						commit
						35579cb216
					
				| @ -484,11 +484,7 @@ where | ||||
|         builder.ordering.sort_tx(&mut tx); | ||||
| 
 | ||||
|         let txid = tx.txid(); | ||||
|         let lookup_output = selected | ||||
|             .into_iter() | ||||
|             .map(|utxo| (utxo.outpoint, utxo)) | ||||
|             .collect(); | ||||
|         let psbt = self.complete_transaction(tx, lookup_output, builder)?; | ||||
|         let psbt = self.complete_transaction(tx, selected, builder)?; | ||||
| 
 | ||||
|         let transaction_details = TransactionDetails { | ||||
|             transaction: None, | ||||
| @ -771,14 +767,10 @@ where | ||||
|         // TODO: check that we are not replacing more than 100 txs from mempool
 | ||||
| 
 | ||||
|         details.txid = tx.txid(); | ||||
|         let lookup_output = selected | ||||
|             .into_iter() | ||||
|             .map(|utxo| (utxo.outpoint, utxo)) | ||||
|             .collect(); | ||||
|         details.fees = fee_amount; | ||||
|         details.timestamp = time::get_timestamp(); | ||||
| 
 | ||||
|         let psbt = self.complete_transaction(tx, lookup_output, builder)?; | ||||
|         let psbt = self.complete_transaction(tx, selected, builder)?; | ||||
| 
 | ||||
|         Ok((psbt, details)) | ||||
|     } | ||||
| @ -1131,10 +1123,14 @@ where | ||||
|     >( | ||||
|         &self, | ||||
|         tx: Transaction, | ||||
|         lookup_output: HashMap<OutPoint, UTXO>, | ||||
|         selected: Vec<UTXO>, | ||||
|         builder: TxBuilder<D, Cs, Ctx>, | ||||
|     ) -> Result<PSBT, Error> { | ||||
|         let mut psbt = PSBT::from_unsigned_tx(tx)?; | ||||
|         let lookup_output = selected | ||||
|             .into_iter() | ||||
|             .map(|utxo| (utxo.outpoint, utxo)) | ||||
|             .collect::<HashMap<_, _>>(); | ||||
| 
 | ||||
|         // add metadata for the inputs
 | ||||
|         for (psbt_input, input) in psbt | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user