From: Steinar H. Gunderson Date: Sun, 28 Feb 2016 00:46:15 +0000 (+0100) Subject: Hard-assert on something that has bitten me too many times now. X-Git-Tag: 1.4.0~10 X-Git-Url: https://git.sesse.net/?p=movit;a=commitdiff_plain;h=34776d3ed2565ee834405e575bf3bfc7f7933e36 Hard-assert on something that has bitten me too many times now. --- 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;