https://bugs.kde.org/show_bug.cgi?id=475724
Jean-Baptiste Mardelle <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Latest Commit| |https://invent.kde.org/mult | |imedia/kdenlive/-/commit/01 | |960252382d216f5a9af59e1338e | |f3c3c67d70e Status|ASSIGNED |RESOLVED --- Comment #5 from Jean-Baptiste Mardelle <[email protected]> --- Git commit 01960252382d216f5a9af59e1338ef3c3c67d70e by Jean-Baptiste Mardelle, on behalf of Yash Bavadiya. Committed on 23/03/2026 at 09:09. Pushed by mardelle into branch 'master'. Fix duplicate profiles appearing in New Project dialog Fixes the duplicate HD 720p (and other) profiles shown in the New Project profile picker. ## Root cause Two compounding bugs: **Bug 1 : MLT ships duplicate profile files with identical specs.** For example, `atsc_720p_25` and `hdv_720_25p` both describe "HD 720p 25 fps" (1280×720, 25/1, progressive, SAR 1:1). The old `refresh()` loaded all files indiscriminately, so both appeared in the UI. **Bug 2 : `refresh()` is called multiple times, breaking naïve deduplication.** `ProfileTreeModel::construct()` calls `refresh()` a second time after the constructor already called it once. On the second call, the first file is already in `m_profiles` and gets skipped, but the duplicate is not, so it sneaks back in as a "new" profile. ## Fix `refresh()` was rewritten with a three-step approach: 1. Snapshot spec strings of everything already in `m_profiles` into `loadedSpecs` before doing any work, so subsequent calls cannot add a spec-twin of an already-loaded profile. 2. Load MLT profiles into a temporary `mltBySpec` map (spec -\> profile), skipping any spec already in `loadedSpecs` or `mltBySpec`. One representative per unique spec survives. 3. Load Kdenlive AppDataLocation profiles, for each, erase the matching entry from `mltBySpec` (Kdenlive's copy wins over MLT's), then insert into `m_profiles`. 4. Flush remaining `mltBySpec` entries (MLT profiles with no Kdenlive equivalent) into `m_profiles`. M +53 -20 src/profiles/profilerepository.cpp https://invent.kde.org/multimedia/kdenlive/-/commit/01960252382d216f5a9af59e1338ef3c3c67d70e -- You are receiving this mail because: You are watching all bug changes.
