switch(Format)
{
case WINED3DFMT_X8R8G8B8:
case WINED3DFMT_R8G8B8:
case WINED3DFMT_A8R8G8B8:
case WINED3DFMT_A2R10G10B10:
case WINED3DFMT_X1R5G5B5:
case WINED3DFMT_A1R5G5B5:
case WINED3DFMT_R5G6B5:
case WINED3DFMT_X4R4G4B4:
case WINED3DFMT_A4R4G4B4:
case WINED3DFMT_R3G3B2:
case WINED3DFMT_A8P8:
case WINED3DFMT_P8:
/* taken from utils.c/getColorBits() */
break;
default:
/* getColorBits doesn't work here, so avoid the silly error messages. */
return FALSE;
}
As you mention in the bug report, this is not a proper fix. We should probably fix the format table to use a shift and a bitcount.