From 0690fe298c44c30629aff03bd36ed2985500da9c Mon Sep 17 00:00:00 2001 From: Qiufeng Date: Thu, 3 Sep 2026 08:22:46 +0800 Subject: [PATCH] fix: initialize optional origin port --- install.sh | 5 ++++- package.json | 2 +- scripts/test-installer.sh | 3 +++ 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/install.sh b/install.sh index 16aecd4..2cde94b 100755 --- a/install.sh +++ b/install.sh @@ -1012,7 +1012,10 @@ validate_listen_port() { } validate_public_origin() { - local value=$1 authority host path_part origin_port suffix + # Keep the optional origin port defined under `set -u`. Origins without an + # explicit port (for example https://example.test) are valid and should + # proceed to the default-port handling below. + local value=$1 authority host path_part origin_port='' suffix case "$value" in http://*|https://*) ;; *) die '公开访问地址必须是 http:// 或 https:// 地址' ;; diff --git a/package.json b/package.json index 987d67c..74c0aff 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tallynote", - "version": "1.1.17", + "version": "1.1.18", "private": true, "type": "module", "packageManager": "pnpm@9.0.6", diff --git a/scripts/test-installer.sh b/scripts/test-installer.sh index bde7f5e..3d4c9f0 100755 --- a/scripts/test-installer.sh +++ b/scripts/test-installer.sh @@ -424,6 +424,9 @@ bash -c ' stat_uid() { printf "0"; } stat_mode_bits() { printf "384"; } validate_public_origin "http://[2001:db8::10]:3000" + # A standard HTTPS origin may omit its default port; this must remain valid + # under the installer strict unset-variable mode. + validate_public_origin "https://example.test" ' _ "$installer_lib" printf '%s\n' \ 'TALLYNOTE_HOST=0.0.0.0' \