Fix exception in CreateInvoice if a payment method is not supported

This commit is contained in:
nicolas.dorier
2019-06-07 00:45:10 +09:00
parent a53a5944f8
commit eefe8289b3
3 changed files with 3 additions and 2 deletions

View File

@@ -158,7 +158,7 @@ namespace BTCPayServer.Controllers
var fetchingByCurrencyPair = _RateProvider.FetchRates(currencyPairsToFetch, rateRules, cancellationToken); var fetchingByCurrencyPair = _RateProvider.FetchRates(currencyPairsToFetch, rateRules, cancellationToken);
var fetchingAll = WhenAllFetched(logs, fetchingByCurrencyPair); var fetchingAll = WhenAllFetched(logs, fetchingByCurrencyPair);
var supportedPaymentMethods = store.GetSupportedPaymentMethods(_NetworkProvider) var supportedPaymentMethods = store.GetSupportedPaymentMethods(_NetworkProvider)
.Where(s => !excludeFilter.Match(s.PaymentId)) .Where(s => !excludeFilter.Match(s.PaymentId) && _paymentMethodHandlerDictionary.Support(s.PaymentId))
.Select(c => .Select(c =>
(Handler: _paymentMethodHandlerDictionary[c.PaymentId], (Handler: _paymentMethodHandlerDictionary[c.PaymentId],
SupportedPaymentMethod: c, SupportedPaymentMethod: c,

View File

@@ -21,6 +21,7 @@ namespace BTCPayServer.Services.Invoices
} }
public IPaymentMethodHandler this[PaymentMethodId index] => _mappedHandlers[index]; public IPaymentMethodHandler this[PaymentMethodId index] => _mappedHandlers[index];
public bool Support(PaymentMethodId paymentMethod) => _mappedHandlers.ContainsKey(paymentMethod);
public IEnumerator<IPaymentMethodHandler> GetEnumerator() public IEnumerator<IPaymentMethodHandler> GetEnumerator()
{ {
return _mappedHandlers.Values.GetEnumerator(); return _mappedHandlers.Values.GetEnumerator();

View File

@@ -1,5 +1,5 @@
<Project> <Project>
<PropertyGroup> <PropertyGroup>
<Version>1.0.3.113</Version> <Version>1.0.3.114</Version>
</PropertyGroup> </PropertyGroup>
</Project> </Project>