From 183c9e56ed10eacef4131c0f40cc110b67d6c5fd Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Mon, 25 May 2009 19:48:52 +0000 Subject: SCI: Only let gfxop_set_color use priority/control if mask has their bits set. This fixes a regression from r39089 where text in the KQ5(floppy) intro was displayed behind trees. svn-id: r40893 --- engines/sci/gfx/operations.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'engines') diff --git a/engines/sci/gfx/operations.cpp b/engines/sci/gfx/operations.cpp index c7bdd61dfc..e2c33b54c7 100644 --- a/engines/sci/gfx/operations.cpp +++ b/engines/sci/gfx/operations.cpp @@ -596,12 +596,13 @@ int gfxop_set_color(GfxState *state, gfx_color_t *color, int r, int g, int b, in // Wrapper for gfxop_set_color int gfxop_set_color(GfxState *state, gfx_color_t *colorOut, gfx_color_t &colorIn) { - if (colorIn.mask & GFX_MASK_VISUAL) - return gfxop_set_color(state, colorOut, colorIn.visual.r, colorIn.visual.g, colorIn.visual.b, - colorIn.alpha, colorIn.priority, colorIn.control); - else - return gfxop_set_color(state, colorOut, -1, -1, -1, colorIn.alpha, - colorIn.priority, colorIn.control); + return gfxop_set_color(state, colorOut, + (colorIn.mask & GFX_MASK_VISUAL) ? colorIn.visual.r : -1, + (colorIn.mask & GFX_MASK_VISUAL) ? colorIn.visual.g : -1, + (colorIn.mask & GFX_MASK_VISUAL) ? colorIn.visual.b : -1, + (colorIn.mask & GFX_MASK_VISUAL) ? colorIn.alpha : -1, + (colorIn.mask & GFX_MASK_PRIORITY) ? colorIn.priority : -1, + (colorIn.mask & GFX_MASK_CONTROL) ? colorIn.control : -1); } int gfxop_set_system_color(GfxState *state, unsigned int index, gfx_color_t *color) { -- cgit v1.2.3