@@ -26,8 +26,8 @@ use lightning_invoice::RawBolt11Invoice;
26
26
27
27
use bdk:: blockchain:: EsploraBlockchain ;
28
28
use bdk:: wallet:: AddressIndex ;
29
- use bdk:: { SignOptions , SyncOptions } ;
30
29
use bdk_chain:: ChainPosition ;
30
+ use bdk_wallet:: SignOptions ;
31
31
use bdk_wallet:: Wallet as BdkWallet ;
32
32
33
33
use bitcoin:: blockdata:: constants:: WITNESS_SCALE_FACTOR ;
@@ -142,7 +142,7 @@ where
142
142
) -> Result < Transaction , Error > {
143
143
let fee_rate = self . fee_estimator . estimate_fee_rate ( confirmation_target) ;
144
144
145
- let locked_wallet = self . inner . lock ( ) . unwrap ( ) ;
145
+ let mut locked_wallet = self . inner . lock ( ) . unwrap ( ) ;
146
146
let mut tx_builder = locked_wallet. build_tx ( ) ;
147
147
148
148
tx_builder
@@ -152,7 +152,7 @@ where
152
152
. enable_rbf ( ) ;
153
153
154
154
let mut psbt = match tx_builder. finish ( ) {
155
- Ok ( ( psbt, _ ) ) => {
155
+ Ok ( psbt) => {
156
156
log_trace ! ( self . logger, "Created funding PSBT: {:?}" , psbt) ;
157
157
psbt
158
158
} ,
@@ -174,7 +174,12 @@ where
174
174
} ,
175
175
}
176
176
177
- Ok ( psbt. extract_tx ( ) )
177
+ let tx = psbt. extract_tx ( ) . map_err ( |e| {
178
+ log_error ! ( self . logger, "Failed to extract transaction: {}" , e) ;
179
+ e
180
+ } ) ?;
181
+
182
+ Ok ( tx)
178
183
}
179
184
180
185
pub ( crate ) fn get_new_address ( & self ) -> Result < bitcoin:: Address , Error > {
@@ -218,7 +223,7 @@ where
218
223
let fee_rate = self . fee_estimator . estimate_fee_rate ( confirmation_target) ;
219
224
220
225
let tx = {
221
- let locked_wallet = self . inner . lock ( ) . unwrap ( ) ;
226
+ let mut locked_wallet = self . inner . lock ( ) . unwrap ( ) ;
222
227
let mut tx_builder = locked_wallet. build_tx ( ) ;
223
228
224
229
if let Some ( amount_sats) = amount_msat_or_drain {
@@ -235,7 +240,7 @@ where
235
240
}
236
241
237
242
let mut psbt = match tx_builder. finish ( ) {
238
- Ok ( ( psbt, _ ) ) => {
243
+ Ok ( psbt) => {
239
244
log_trace ! ( self . logger, "Created PSBT: {:?}" , psbt) ;
240
245
psbt
241
246
} ,
@@ -256,7 +261,11 @@ where
256
261
return Err ( err. into ( ) ) ;
257
262
} ,
258
263
}
259
- psbt. extract_tx ( )
264
+
265
+ psbt. extract_tx ( ) . map_err ( |e| {
266
+ log_error ! ( self . logger, "Failed to extract transaction: {}" , e) ;
267
+ e
268
+ } ) ?
260
269
} ;
261
270
262
271
self . broadcaster . broadcast_transactions ( & [ & tx] ) ;
@@ -440,7 +449,12 @@ where
440
449
} ,
441
450
}
442
451
443
- Ok ( psbt. extract_tx ( ) )
452
+ let tx = psbt. extract_tx ( ) . map_err ( |e| {
453
+ log_error ! ( self . logger, "Failed to extract transaction: {}" , e) ;
454
+ ( )
455
+ } ) ?;
456
+
457
+ Ok ( tx)
444
458
}
445
459
}
446
460
0 commit comments