I found a non-critical bug in parstxtr.cpp around line 479:
The code reads:
-------------------<parstxtr.cpp:471>---------------------------------
CASE (OFFSET_TOKEN)
Parse_UV_Vect (Image->Offset);
Image->Offset[U] *= (DBL)-Image->iwidth;
Image->Offset[V] *= (DBL)-Image->iheight;
END_CASE
CASE (ALPHA_TOKEN)
Warning(155, "Keyword ALPHA discontinued. Use FILTER instead.");
CASE (COLOUR_KEY_TOKEN)
switch(Token.Function_Id)
{
case FILTER_TOKEN:
EXPECT
CASE (ALL_TOKEN)
----------------------------------------------------------------------
This does not work as expected: ALPHA_TOKEN will never get selected
because putting "alpha" into an image_map will result in COLOUR_KEY_TOKEN
getting parsed instead. Please apply the following patch to fix that:
-------------------<parstxtr.cpp:471>---------------------------------
CASE (OFFSET_TOKEN)
Parse_UV_Vect (Image->Offset);
Image->Offset[U] *= (DBL)-Image->iwidth;
Image->Offset[V] *= (DBL)-Image->iheight;
END_CASE
CASE (COLOUR_KEY_TOKEN)
switch(Token.Function_Id)
{
case ALPHA_TOKEN:
Warning(155, "Keyword ALPHA discontinued. Use FILTER instead.");
break; <-- (***)
case FILTER_TOKEN:
EXPECT
CASE (ALL_TOKEN)
----------------------------------------------------------------------
The break; statement in the line marked with (***) can be left away
if "alpha" can be parsed like "filter". Otherwise one should at least
parse (and ignore) the argument for "alpha".
Cheers,
Wolfgang
Post a reply to this message
|