mirror of
https://github.com/hyprwm/Hyprland.git
synced 2026-08-24 10:04:19 -05:00
std::memcmp returns a nonzero value when the buffers differ, so hdrMetadataEqual() returned true for differing metadata and false for identical metadata. The caller in commitFrame compares !hdrMetadataEqual(WANTED, CURRENT), which inverted this again: identical HDR metadata was treated as changed every frame, re-sending AQ_OUTPUT_STATE_HDR and forcing a full DRM modeset on every commit. Fixes a per-frame modeset loop on displays with HDR metadata configured (e.g. cm=hdredid). Co-authored-by: neonvoidx <me@neonvoid.dev>