From 36e5801ad0f6dcb396b3290ba70a70efe115162d Mon Sep 17 00:00:00 2001 From: sezzim <174854242+sezzim@users.noreply.github.com> Date: Sun, 11 Jan 2026 16:08:12 -0800 Subject: [PATCH] Create aliases when merging performers --- pkg/sqlite/performer.go | 10 ++++++++++ .../src/components/Performers/PerformerMergeDialog.tsx | 10 ++++------ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/pkg/sqlite/performer.go b/pkg/sqlite/performer.go index 4e06b5b29..ab89a742a 100644 --- a/pkg/sqlite/performer.go +++ b/pkg/sqlite/performer.go @@ -939,6 +939,16 @@ AND NOT EXISTS(SELECT 1 FROM `+table+` o WHERE o.`+idColumn+` = `+table+`.`+idCo } } + _, err := dbWrapper.Exec(ctx, "INSERT INTO "+performersAliasesTable+" (performer_id, alias) SELECT ?, name FROM "+performerTable+" WHERE id IN "+inBinding, args...) + if err != nil { + return err + } + + _, err = dbWrapper.Exec(ctx, "UPDATE "+performersAliasesTable+" SET performer_id = ? WHERE performer_id IN "+inBinding, args...) + if err != nil { + return err + } + for _, id := range source { err := qb.Destroy(ctx, id) if err != nil { diff --git a/ui/v2.5/src/components/Performers/PerformerMergeDialog.tsx b/ui/v2.5/src/components/Performers/PerformerMergeDialog.tsx index 834d2ac76..994c66d39 100644 --- a/ui/v2.5/src/components/Performers/PerformerMergeDialog.tsx +++ b/ui/v2.5/src/components/Performers/PerformerMergeDialog.tsx @@ -206,13 +206,11 @@ const PerformerMergeDetails: React.FC = ({ ) ); - // default alias list should be the existing aliases, plus the names of all sources, - // plus all source aliases, deduplicated + // Default alias list should be the existing aliases, plus all source + // aliases, deduplicated. The backend will add the source names as + // aliases. const allAliases = uniq( - dest.alias_list.concat( - sources.map((s) => s.name), - sources.flatMap((s) => s.alias_list) - ) + dest.alias_list.concat(sources.flatMap((s) => s.alias_list)) ); setAliases(