diff --git a/v2rayN/v2rayN/Common/JsonUtils.cs b/v2rayN/v2rayN/Common/JsonUtils.cs index 2198ba35..ab81d41e 100644 --- a/v2rayN/v2rayN/Common/JsonUtils.cs +++ b/v2rayN/v2rayN/Common/JsonUtils.cs @@ -105,9 +105,12 @@ namespace v2rayN /// /// /// - public static int ToFile(object? obj, string filePath, bool nullValue = true) + public static int ToFile(object? obj, string? filePath, bool nullValue = true) { - int result; + if (filePath is null) + { + return -1; + } try { using FileStream file = File.Create(filePath); @@ -119,14 +122,13 @@ namespace v2rayN }; JsonSerializer.Serialize(file, obj, options); - result = 0; + return 0; } catch (Exception ex) { Logging.SaveLog(ex.Message, ex); - result = -1; + return -1; } - return result; } } } \ No newline at end of file diff --git a/v2rayN/v2rayN/Handler/CoreConfigSingbox.cs b/v2rayN/v2rayN/Handler/CoreConfigSingbox.cs index c2cd926c..1fc6858c 100644 --- a/v2rayN/v2rayN/Handler/CoreConfigSingbox.cs +++ b/v2rayN/v2rayN/Handler/CoreConfigSingbox.cs @@ -25,6 +25,11 @@ namespace v2rayN.Handler msg = ResUI.CheckServerSettings; return -1; } + if (node.GetNetwork() == nameof(ETransport.kcp)) + { + msg = ResUI.Incorrectconfiguration + $" - {node.GetNetwork()}"; + return -1; + } msg = ResUI.InitialConfiguration; diff --git a/v2rayN/v2rayN/Handler/CoreHandler.cs b/v2rayN/v2rayN/Handler/CoreHandler.cs index b6b37c2f..05a8e08b 100644 --- a/v2rayN/v2rayN/Handler/CoreHandler.cs +++ b/v2rayN/v2rayN/Handler/CoreHandler.cs @@ -38,7 +38,8 @@ namespace v2rayN.Handler string fileName = Utils.GetConfigPath(Global.CoreConfigFileName); if (CoreConfigHandler.GenerateClientConfig(node, fileName, out string msg, out string content) != 0) { - ShowMsg(false, msg); + ShowMsg(false, msg); + return; } else {