From 3e07c54be3988d0d422108711104200bf487c16a Mon Sep 17 00:00:00 2001
From: Giteabot <teabot@gitea.io>
Date: Tue, 25 Jul 2023 02:14:18 -0400
Subject: [PATCH] Fix escape problems in the branch selector (#25875) (#26103)

Backport #25875 by @yp05327

Fix #25865

Co-authored-by: yp05327 <576951401@qq.com>
---
 web_src/js/components/RepoBranchTagSelector.vue | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/web_src/js/components/RepoBranchTagSelector.vue b/web_src/js/components/RepoBranchTagSelector.vue
index 5d08575278..4fc3936244 100644
--- a/web_src/js/components/RepoBranchTagSelector.vue
+++ b/web_src/js/components/RepoBranchTagSelector.vue
@@ -108,7 +108,7 @@ const sfc = {
       return this.items.filter((item) => item.name.toLowerCase() === this.searchTerm.toLowerCase()).length === 0;
     },
     formActionUrl() {
-      return `${this.repoLink}/branches/_new/${pathEscapeSegments(this.branchNameSubURL)}`;
+      return `${this.repoLink}/branches/_new/${this.branchNameSubURL}`;
     },
   },
 
@@ -274,15 +274,15 @@ export function initRepoBranchTagSelector(selector) {
 
     if (data.showBranchesInDropdown && data.branches) {
       for (const branch of data.branches) {
-        data.items.push({name: branch, url: branch, branch: true, tag: false, selected: branch === data.defaultBranch});
+        data.items.push({name: branch, url: pathEscapeSegments(branch), branch: true, tag: false, selected: branch === data.defaultBranch});
       }
     }
     if (!data.noTag && data.tags) {
       for (const tag of data.tags) {
         if (data.release) {
-          data.items.push({name: tag, url: tag, branch: false, tag: true, selected: tag === data.release.tagName});
+          data.items.push({name: tag, url: pathEscapeSegments(tag), branch: false, tag: true, selected: tag === data.release.tagName});
         } else {
-          data.items.push({name: tag, url: tag, branch: false, tag: true, selected: tag === data.defaultBranch});
+          data.items.push({name: tag, url: pathEscapeSegments(tag), branch: false, tag: true, selected: tag === data.defaultBranch});
         }
       }
     }