diff --git a/backend/package.json b/backend/package.json index ae3382f..6fa4aa6 100644 --- a/backend/package.json +++ b/backend/package.json @@ -1,6 +1,6 @@ { "name": "sub-store", - "version": "2.14.142", + "version": "2.14.143", "description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.", "main": "src/main.js", "scripts": { diff --git a/backend/src/core/proxy-utils/parsers/index.js b/backend/src/core/proxy-utils/parsers/index.js index 02f88dc..c33306e 100644 --- a/backend/src/core/proxy-utils/parsers/index.js +++ b/backend/src/core/proxy-utils/parsers/index.js @@ -333,10 +333,13 @@ function URI_VLESS() { line = line.split('vless://')[1]; // eslint-disable-next-line no-unused-vars let [__, uuid, server, port, ___, addons = '', name] = - /^(.*?)@(.*?):(\d+)\/?(\?(.*?))?(?:#(.*?))$/.exec(line); + /^(.*?)@(.*?):(\d+)\/?(\?(.*?))?(?:#(.*?))?$/.exec(line); port = parseInt(`${port}`, 10); uuid = decodeURIComponent(uuid); - name = decodeURIComponent(name) ?? `VLESS ${server}:${port}`; + if (name != null) { + name = decodeURIComponent(name); + } + name = name ?? `VLESS ${server}:${port}`; const proxy = { type: 'vless', name, @@ -415,13 +418,16 @@ function URI_Hysteria2() { line = line.split(/(hysteria2|hy2):\/\//)[2]; // eslint-disable-next-line no-unused-vars let [__, password, server, ___, port, ____, addons = '', name] = - /^(.*?)@(.*?)(:(\d+))?\/?(\?(.*?))?(?:#(.*?))$/.exec(line); + /^(.*?)@(.*?)(:(\d+))?\/?(\?(.*?))?(?:#(.*?))?$/.exec(line); port = parseInt(`${port}`, 10); if (isNaN(port)) { port = 443; } password = decodeURIComponent(password); - name = decodeURIComponent(name) ?? `Hysteria2 ${server}:${port}`; + if (name != null) { + name = decodeURIComponent(name); + } + name = name ?? `Hysteria2 ${server}:${port}`; const proxy = { type: 'hysteria2',