diff --git a/web/src/routes/[handle]/[repo]/pulls/[aturi]/[version]/[[range]]/PullViewPage.svelte b/web/src/routes/[handle]/[repo]/pulls/[aturi]/[version]/[[range]]/PullViewPage.svelte index 31413f682..1dddbdb2b 100644 --- a/web/src/routes/[handle]/[repo]/pulls/[aturi]/[version]/[[range]]/PullViewPage.svelte +++ b/web/src/routes/[handle]/[repo]/pulls/[aturi]/[version]/[[range]]/PullViewPage.svelte @@ -195,7 +195,12 @@ let allConflictsShown = $state(false); let conflictsPreviewHeight = $state(undefined); - const conflicts = $derived(check.data?.conflicts ?? []); + // gitmirror lists one entry per conflict class, so a filename can repeat + const conflicts = $derived( + (check.data?.conflicts ?? []).filter( + ({ filename }, i, all) => all.findIndex((c) => c.filename === filename) === i + ) + ); const shownConflicts = $derived( allConflictsShown ? conflicts : conflicts.slice(0, CONFLICT_PREVIEW_COUNT) );