diff --git a/dlls/windowscodecs/palette.c b/dlls/windowscodecs/palette.c index 8941fb58193..ffd587728f4 100644 --- a/dlls/windowscodecs/palette.c +++ b/dlls/windowscodecs/palette.c @@ -117,6 +117,16 @@ static HRESULT WINAPI PaletteImpl_InitializePredefined(IWICPalette *iface, colors[1] = 0xffffffff; break; + case WICBitmapPaletteTypeFixedGray4: + count = 4; + colors = HeapAlloc(GetProcessHeap(), 0, count * sizeof(WICColor)); + if (!colors) return E_OUTOFMEMORY; + colors[0] = 0xff000000; + colors[1] = 0xff555555; + colors[2] = 0xffaaaaaa; + colors[3] = 0xffffffff; + break; + default: FIXME("(%p,%u,%d): stub\n", iface, type, add_transparent); return E_NOTIMPL; diff --git a/dlls/windowscodecs/tests/palette.c b/dlls/windowscodecs/tests/palette.c index 7a34be73922..1768e1a45b9 100644 --- a/dlls/windowscodecs/tests/palette.c +++ b/dlls/windowscodecs/tests/palette.c @@ -159,6 +159,8 @@ static void test_predefined_palette(void) } td[] = { { WICBitmapPaletteTypeFixedBW, 1, 1, 2, { 0xff000000, 0xffffffff } }, + { WICBitmapPaletteTypeFixedGray4, 0, 1, 4, + { 0xff000000, 0xff555555, 0xffaaaaaa, 0xffffffff } }, }; IWICImagingFactory *factory; IWICPalette *palette;