mirror of
https://github.com/aljazceru/btcpayserver.git
synced 2025-12-17 22:14:26 +01:00
Remove useless parameter from CollectSignature
This commit is contained in:
committed by
rockstardev
parent
2427740e79
commit
d40359f12f
@@ -1356,7 +1356,7 @@ namespace BTCPayServer.Controllers
|
|||||||
if (vm.SigningContext.PendingTransactionId is not null)
|
if (vm.SigningContext.PendingTransactionId is not null)
|
||||||
{
|
{
|
||||||
var psbt = PSBT.Parse(vm.SigningContext.PSBT, NetworkProvider.GetNetwork<BTCPayNetwork>(walletId.CryptoCode).NBitcoinNetwork);
|
var psbt = PSBT.Parse(vm.SigningContext.PSBT, NetworkProvider.GetNetwork<BTCPayNetwork>(walletId.CryptoCode).NBitcoinNetwork);
|
||||||
var pendingTransaction = await _pendingTransactionService.CollectSignature(walletId.CryptoCode, psbt, CancellationToken.None);
|
var pendingTransaction = await _pendingTransactionService.CollectSignature(psbt, CancellationToken.None);
|
||||||
|
|
||||||
if (pendingTransaction != null)
|
if (pendingTransaction != null)
|
||||||
return RedirectToAction(nameof(WalletTransactions), new { walletId = walletId.ToString() });
|
return RedirectToAction(nameof(WalletTransactions), new { walletId = walletId.ToString() });
|
||||||
|
|||||||
@@ -147,19 +147,14 @@ public class PendingTransactionService(
|
|||||||
return pendingTransaction;
|
return pendingTransaction;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<PendingTransaction?> CollectSignature(string cryptoCode, PSBT psbt, CancellationToken cancellationToken)
|
public async Task<PendingTransaction?> CollectSignature(PSBT psbt, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
var network = networkProvider.GetNetwork<BTCPayNetwork>(cryptoCode);
|
var cryptoCode = psbt.Network.NetworkSet.CryptoCode;
|
||||||
if (network is null)
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
var txId = psbt.GetGlobalTransaction().GetHash();
|
var txId = psbt.GetGlobalTransaction().GetHash();
|
||||||
await using var ctx = dbContextFactory.CreateContext();
|
await using var ctx = dbContextFactory.CreateContext();
|
||||||
var pendingTransaction =
|
var pendingTransaction =
|
||||||
await ctx.PendingTransactions.FindAsync(new object[] { cryptoCode, txId.ToString() }, cancellationToken);
|
await ctx.PendingTransactions.FindAsync(new object[] { cryptoCode, txId.ToString() }, cancellationToken);
|
||||||
if (pendingTransaction is null || pendingTransaction.State != PendingTransactionState.Pending)
|
if (pendingTransaction?.State is not PendingTransactionState.Pending)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -170,7 +165,7 @@ public class PendingTransactionService(
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
var dbPsbt = PSBT.Parse(blob.PSBT, network.NBitcoinNetwork);
|
var dbPsbt = PSBT.Parse(blob.PSBT, psbt.Network);
|
||||||
|
|
||||||
// Deduplicate: Check if this exact PSBT (Base64) was already collected
|
// Deduplicate: Check if this exact PSBT (Base64) was already collected
|
||||||
var newPsbtBase64 = psbt.ToBase64();
|
var newPsbtBase64 = psbt.ToBase64();
|
||||||
@@ -181,7 +176,7 @@ public class PendingTransactionService(
|
|||||||
|
|
||||||
foreach (var collectedSignature in blob.CollectedSignatures)
|
foreach (var collectedSignature in blob.CollectedSignatures)
|
||||||
{
|
{
|
||||||
var collectedPsbt = PSBT.Parse(collectedSignature.ReceivedPSBT, network.NBitcoinNetwork);
|
var collectedPsbt = PSBT.Parse(collectedSignature.ReceivedPSBT, psbt.Network);
|
||||||
dbPsbt.Combine(collectedPsbt); // combine changes the object
|
dbPsbt.Combine(collectedPsbt); // combine changes the object
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user