refactor: replace recursion with while loop in override

This commit is contained in:
Sofia
2026-01-09 00:55:19 +08:00
committed by GitHub
parent da30e623ce
commit 492a2fe898

View File

@@ -746,7 +746,10 @@ set_singbox_adv(){ #自定义singbox配置文件
echo "-----------------------------------------------"
echo -e "使用前请务必参考配置教程:\033[32;4m https://juewuy.github.io/nWTjEpkSK \033[0m"
}
override(){ #配置文件覆写
# 配置文件覆写
override() {
while true; do
[ -z "$rule_link" ] && rule_link=1
[ -z "$server_link" ] && server_link=1
echo "-----------------------------------------------"
@@ -764,7 +767,8 @@ override(){ #配置文件覆写
[ "$inuserguide" = 1 ] || echo -e " 0 返回上级菜单"
read -p "请输入对应数字 > " num
case "$num" in
0)
"" | 0)
break
;;
1)
if [ -n "$(pidof CrashCore)" ]; then
@@ -778,24 +782,19 @@ override(){ #配置文件覆写
else
setport
fi
override
;;
2)
setrules
override
;;
3)
setproxies
override
;;
4)
setgroups
override
;;
5)
echo "$crashcore" | grep -q 'singbox' && set_singbox_adv || set_clash_adv
sleep 3
override
;;
9)
echo "-----------------------------------------------"
@@ -811,12 +810,14 @@ override(){ #配置文件覆写
echo "-----------------------------------------------"
echo -e "\033[32m设置成功\033[0m"
}
override
;;
*)
errornum
sleep 1
break
;;
esac
done
}
gen_link_config(){ #选择在线规则