From 34776d3ed2565ee834405e575bf3bfc7f7933e36 Mon Sep 17 00:00:00 2001 From: "Steinar H. Gunderson" Date: Sun, 28 Feb 2016 01:46:15 +0100 Subject: [PATCH] Hard-assert on something that has bitten me too many times now. --- effect_chain.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/effect_chain.cpp b/effect_chain.cpp index fa7340d..1d9aea8 100644 --- a/effect_chain.cpp +++ b/effect_chain.cpp @@ -1176,6 +1176,12 @@ void EffectChain::propagate_alpha() if (alpha_handling == Effect::INPUT_AND_OUTPUT_PREMULTIPLIED_ALPHA || alpha_handling == Effect::INPUT_PREMULTIPLIED_ALPHA_KEEP_BLANK) { + // This combination (requiring premultiplied alpha, but _not_ requiring + // linear light) is illegal, // since the combination + // of premultiplied alpha and nonlinear inputs is + // meaningless. + assert(node->effect->needs_linear_light()); + // If the effect has asked for premultiplied alpha, check that it has got it. if (any_postmultiplied) { node->output_alpha_type = ALPHA_INVALID; -- 2.39.5