From b5e4c803aa7c888a6686c7975eabd84d35a366d8 Mon Sep 17 00:00:00 2001 From: "nicolas.dorier" Date: Fri, 12 Jan 2018 22:08:20 +0900 Subject: [PATCH] fix bad network throwing nullreferenceexception --- BTCPayServer/Configuration/DefaultConfiguration.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/BTCPayServer/Configuration/DefaultConfiguration.cs b/BTCPayServer/Configuration/DefaultConfiguration.cs index abe41a408..db9348c45 100644 --- a/BTCPayServer/Configuration/DefaultConfiguration.cs +++ b/BTCPayServer/Configuration/DefaultConfiguration.cs @@ -19,7 +19,7 @@ namespace BTCPayServer.Configuration protected override CommandLineApplication CreateCommandLineApplicationCore() { var provider = new BTCPayNetworkProvider(ChainType.Main); - var chains = string.Join(",", provider.GetAll().Select(n=>n.CryptoCode.ToLowerInvariant()).ToArray()); + var chains = string.Join(",", provider.GetAll().Select(n => n.CryptoCode.ToLowerInvariant()).ToArray()); CommandLineApplication app = new CommandLineApplication(true) { FullName = "BTCPay\r\nOpen source, self-hosted payment processor.", @@ -72,9 +72,13 @@ namespace BTCPayServer.Configuration if (network != null) { var n = Network.GetNetwork(network); + if (n == null) + { + throw new ConfigException($"Invalid network parameter '{network}'"); + } return n.ToChainType(); } - var net = conf.GetOrDefault("regtest", false) ? ChainType.Regtest: + var net = conf.GetOrDefault("regtest", false) ? ChainType.Regtest : conf.GetOrDefault("testnet", false) ? ChainType.Test : ChainType.Main; return net;