From c3971bda05d64f8958b3a96af9fea2a0ea6f6eff Mon Sep 17 00:00:00 2001 From: 2dust <31833384+2dust@users.noreply.github.com> Date: Fri, 18 Mar 2022 20:30:08 +0800 Subject: [PATCH] bug fix --- v2rayN/v2rayN/Handler/ConfigHandler.cs | 4 +--- v2rayN/v2rayN/Handler/MainFormHandler.cs | 14 ++++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/v2rayN/v2rayN/Handler/ConfigHandler.cs b/v2rayN/v2rayN/Handler/ConfigHandler.cs index 9c7f0b1c..9bdf698b 100644 --- a/v2rayN/v2rayN/Handler/ConfigHandler.cs +++ b/v2rayN/v2rayN/Handler/ConfigHandler.cs @@ -621,7 +621,7 @@ namespace v2rayN.Handler /// /// /// 成功导入的数量 - public static int AddBatchServers(ref Config config, string clipboardData, string subid, string groupId) + public static int AddBatchServers(ref Config config, string clipboardData, string subid, List lstOriSub, string groupId) { if (Utils.IsNullOrEmpty(clipboardData)) { @@ -629,10 +629,8 @@ namespace v2rayN.Handler } //copy sub items - List lstOriSub = null; if (!Utils.IsNullOrEmpty(subid)) { - lstOriSub = config.vmess.Where(it => it.subid == subid).ToList(); RemoveServerViaSubid(ref config, subid); } //if (clipboardData.IndexOf("vmess") >= 0 && clipboardData.IndexOf("vmess") == clipboardData.LastIndexOf("vmess")) diff --git a/v2rayN/v2rayN/Handler/MainFormHandler.cs b/v2rayN/v2rayN/Handler/MainFormHandler.cs index f81bb165..2387bb68 100644 --- a/v2rayN/v2rayN/Handler/MainFormHandler.cs +++ b/v2rayN/v2rayN/Handler/MainFormHandler.cs @@ -1,12 +1,14 @@ using NHotkey; using NHotkey.WindowsForms; using System; +using System.Collections.Generic; using System.Drawing; using System.IO; using System.Threading; using System.Threading.Tasks; using System.Windows.Forms; using v2rayN.Mode; +using System.Linq; namespace v2rayN.Handler { @@ -159,16 +161,16 @@ namespace v2rayN.Handler public int AddBatchServers(Config config, string clipboardData, string subid, string groupId) { - int counter; - int _Add() + List lstOriSub = null; + if (!Utils.IsNullOrEmpty(subid)) { - return ConfigHandler.AddBatchServers(ref config, clipboardData, subid, groupId); + lstOriSub = config.vmess.Where(it => it.subid == subid).ToList(); } - counter = _Add(); + + int counter = ConfigHandler.AddBatchServers(ref config, clipboardData, subid, lstOriSub, groupId); if (counter < 1) { - clipboardData = Utils.Base64Decode(clipboardData); - counter = _Add(); + counter = ConfigHandler.AddBatchServers(ref config, Utils.Base64Decode(clipboardData), subid, lstOriSub, groupId); } return counter;