Compare commits

..

No commits in common. "e9a6411698377a407f3507a21dc80ca2bc53d64a" and "d4fdb93b55d1bcb4e9fe283e0157ff000e2e3f0c" have entirely different histories.

2 changed files with 3 additions and 29 deletions

View file

@ -170,8 +170,7 @@ public static class CoreConfigHandler
var ruleOutboundNode = await AppManager.Instance.GetProfileItemViaRemarks(ruleItem.OutboundTag); var ruleOutboundNode = await AppManager.Instance.GetProfileItemViaRemarks(ruleItem.OutboundTag);
if (ruleOutboundNode != null) if (ruleOutboundNode != null)
{ {
var ruleOutboundNodeAct = await FillNodeContext(context, ruleOutboundNode, false); await FillNodeContext(context, ruleOutboundNode);
context.AllProxiesMap[$"remark:{ruleItem.OutboundTag}"] = ruleOutboundNodeAct;
} }
} }
} }

View file

@ -96,34 +96,9 @@ public class GroupProfileManager
return []; return [];
} }
var childProfileIds = Utils.String2List(extra.ChildItems) var childProfileIds = Utils.String2List(extra.ChildItems)
?.Where(p => !string.IsNullOrEmpty(p)) ?.Where(p => !string.IsNullOrEmpty(p)) ?? [];
.ToList() ?? [];
if (childProfileIds.Count == 0)
{
return [];
}
var childProfiles = await AppManager.Instance.GetProfileItemsByIndexIds(childProfileIds); var childProfiles = await AppManager.Instance.GetProfileItemsByIndexIds(childProfileIds);
if (childProfiles == null || childProfiles.Count == 0) return childProfiles ?? [];
{
return [];
}
var profileMap = childProfiles
.Where(p => p != null && !p.IndexId.IsNullOrEmpty())
.GroupBy(p => p!.IndexId!)
.ToDictionary(g => g.Key, g => g.First());
var ordered = new List<ProfileItem>(childProfileIds.Count);
foreach (var id in childProfileIds)
{
if (id != null && profileMap.TryGetValue(id, out var item) && item != null)
{
ordered.Add(item);
}
}
return ordered;
} }
private static async Task<List<ProfileItem>> GetSubChildProfileItems(ProtocolExtraItem? extra) private static async Task<List<ProfileItem>> GetSubChildProfileItems(ProtocolExtraItem? extra)