From ee7d55e324d1e2845d079ef210c13df3e3353fd1 Mon Sep 17 00:00:00 2001 From: 2dust <31833384+2dust@users.noreply.github.com> Date: Tue, 30 Aug 2022 16:16:39 +0800 Subject: [PATCH] bug fix --- clashN/clashN/Handler/CoreHandler.cs | 2 +- clashN/clashN/Handler/MainFormHandler.cs | 34 ++++++++++++++++-------- 2 files changed, 24 insertions(+), 12 deletions(-) diff --git a/clashN/clashN/Handler/CoreHandler.cs b/clashN/clashN/Handler/CoreHandler.cs index 4940d03..44811e4 100644 --- a/clashN/clashN/Handler/CoreHandler.cs +++ b/clashN/clashN/Handler/CoreHandler.cs @@ -56,7 +56,7 @@ namespace clashN.Handler { ShowMsg(true, msg); - if (_process != null && !blChanged) + if (_process != null && !_process.HasExited && !blChanged) { MainFormHandler.Instance.ClashConfigReload(fileName); } diff --git a/clashN/clashN/Handler/MainFormHandler.cs b/clashN/clashN/Handler/MainFormHandler.cs index 0768356..3c97595 100644 --- a/clashN/clashN/Handler/MainFormHandler.cs +++ b/clashN/clashN/Handler/MainFormHandler.cs @@ -335,11 +335,17 @@ namespace clashN.Handler public async void ClashSetActiveProxy(string name, string nameNode) { - var url = $"{Global.httpProtocol}{Global.Loopback}:{LazyConfig.Instance.GetConfig().APIPort}/proxies/{name}"; - Dictionary headers = new Dictionary(); - headers.Add("name", nameNode); - await HttpClientHelper.GetInstance().PutAsync(url, headers); - + try + { + var url = $"{Global.httpProtocol}{Global.Loopback}:{LazyConfig.Instance.GetConfig().APIPort}/proxies/{name}"; + Dictionary headers = new Dictionary(); + headers.Add("name", nameNode); + await HttpClientHelper.GetInstance().PutAsync(url, headers); + } + catch (Exception ex) + { + Utils.SaveLog(ex.Message, ex); + } } public void ClashConfigUpdate(Dictionary headers) @@ -358,13 +364,19 @@ namespace clashN.Handler }); } - public async void ClashConfigReload( string filePath) + public async void ClashConfigReload(string filePath) { - var url = $"{Global.httpProtocol}{Global.Loopback}:{LazyConfig.Instance.GetConfig().APIPort}/configs"; - Dictionary headers = new Dictionary(); - headers.Add("path", filePath); - await HttpClientHelper.GetInstance().PutAsync(url, headers); - + try + { + var url = $"{Global.httpProtocol}{Global.Loopback}:{LazyConfig.Instance.GetConfig().APIPort}/configs"; + Dictionary headers = new Dictionary(); + headers.Add("path", filePath); + await HttpClientHelper.GetInstance().PutAsync(url, headers); + } + catch (Exception ex) + { + Utils.SaveLog(ex.Message, ex); + } } }