diff --git a/v2rayN/ServiceLib/Handler/ConfigHandler.cs b/v2rayN/ServiceLib/Handler/ConfigHandler.cs index deafb301..d319118f 100644 --- a/v2rayN/ServiceLib/Handler/ConfigHandler.cs +++ b/v2rayN/ServiceLib/Handler/ConfigHandler.cs @@ -1041,13 +1041,19 @@ public static class ConfigHandler foreach (var item in lstProfile) { - if (!lstKeep.Exists(i => CompareProfileItem(i, item, false))) + if (item.IsComplex()) { lstKeep.Add(item); + continue; + } + + if (lstKeep.Exists(i => CompareProfileItem(i, item, false))) + { + lstRemove.Add(item); } else { - lstRemove.Add(item); + lstKeep.Add(item); } } await RemoveServers(config, lstRemove);