From 95e9af4bbf76d886b021b976e83ee1c756e8a534 Mon Sep 17 00:00:00 2001 From: Chotow <13994362+choyri@users.noreply.github.com> Date: Wed, 18 Mar 2026 20:41:14 +0800 Subject: [PATCH] fix: avoid fmt.Sprintf on custom GeoLiteDBUrl without %s placeholder (#1384) --- backend/internal/service/geolite_service.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/backend/internal/service/geolite_service.go b/backend/internal/service/geolite_service.go index 66a2a5f0..9378af20 100644 --- a/backend/internal/service/geolite_service.go +++ b/backend/internal/service/geolite_service.go @@ -14,6 +14,7 @@ import ( "net/netip" "os" "path/filepath" + "strings" "sync" "time" @@ -112,7 +113,11 @@ func (s *GeoLiteService) UpdateDatabase(parentCtx context.Context) error { } slog.Info("Updating GeoLite2 City database") - downloadUrl := fmt.Sprintf(common.EnvConfig.GeoLiteDBUrl, common.EnvConfig.MaxMindLicenseKey) + + downloadUrl := common.EnvConfig.GeoLiteDBUrl + if strings.Contains(downloadUrl, "%s") { + downloadUrl = fmt.Sprintf(downloadUrl, common.EnvConfig.MaxMindLicenseKey) + } ctx, cancel := context.WithTimeout(parentCtx, 10*time.Minute) defer cancel()