Skip to content

[CRASH] Opening the vcpkg settings page throws duplicate key exception for arm64-linux #4537

@DamoyY

Description

@DamoyY

Summary

Opening the vcpkg package manager settings page causes UniGetUI to fail navigation because the item arm64-linux is added twice.

Version

  • UniGetUI 2026.1.3
  • Build 107

Steps to reproduce

  1. Start UniGetUI.
  2. Open Settings.
  3. Navigate to the vcpkg package manager page.

Actual behavior

The page fails to open and UniGetUI raises an unhandled exception:

Unhandled Exception raised: An item with the same key has already been added. Key: arm64-linux
   at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
   at UniGetUI.Pages.SettingsPages.GeneralPages.PackageManagerPage.OnNavigatedTo(NavigationEventArgs e)

Expected behavior

The vcpkg settings page should open normally, even if the triplet source contains duplicate values.

Relevant log excerpt

[2026-3-31 10:54:49] Unhandled Exception raised: An item with the same key has already been added. Key: arm64-linux
[2026-3-31 10:54:49] Stack Trace:
                    at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
                    at UniGetUI.Pages.SettingsPages.GeneralPages.PackageManagerPage.OnNavigatedTo(NavigationEventArgs e) in D:\a\UniGetUI\UniGetUI\src\UniGetUI\Pages\SettingsPages\ManagersPages\PackageManager.xaml.cs:line 350
                    at Microsoft.UI.Xaml.Controls.Page.Microsoft.UI.Xaml.Controls.IPageOverrides.OnNavigatedTo(NavigationEventArgs e)
                    at ABI.Microsoft.UI.Xaml.Controls.IPageOverrides.Do_Abi_OnNavigatedTo_1(IntPtr thisPtr, IntPtr e)

Additional note

Based on the stack trace, the crash appears to happen while populating the vcpkg triplet list for the settings page, and arm64-linux seems to be present more than once.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions