From 996cc6f6a4fb20a97f73eef6038fd9893668d074 Mon Sep 17 00:00:00 2001 From: vaxerski Date: Fri, 12 Jul 2024 10:52:05 +0200 Subject: [PATCH] drm/atomic: fix gamma resetting thanks @ikalco --- src/backend/drm/impl/Atomic.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/backend/drm/impl/Atomic.cpp b/src/backend/drm/impl/Atomic.cpp index 607f63e..abe86a4 100644 --- a/src/backend/drm/impl/Atomic.cpp +++ b/src/backend/drm/impl/Atomic.cpp @@ -238,7 +238,10 @@ bool Aquamarine::CDRMAtomicImpl::prepareConnector(Hyprutils::Memory::CSharedPoin if (STATE.committed & COutputState::AQ_OUTPUT_STATE_GAMMA_LUT) { if (!connector->crtc->props.gamma_lut) // TODO: allow this with legacy gamma, perhaps. connector->backend->backend->log(AQ_LOG_ERROR, "atomic drm: failed to commit gamma: no gamma_lut prop"); - else { + else if (STATE.gammaLut.empty()) { + data.atomic.gammaLut = 0; + data.atomic.gammad = true; + } else { std::vector lut; lut.resize(STATE.gammaLut.size() / 3); // [r,g,b]+