diff --git a/programs/winemenubuilder/winemenubuilder.c b/programs/winemenubuilder/winemenubuilder.c index 7a75d10..09402af 100644 --- a/programs/winemenubuilder/winemenubuilder.c +++ b/programs/winemenubuilder/winemenubuilder.c @@ -601,6 +601,7 @@ static int populate_module_icons(HMODULE hModule, GRPICONDIR *grpIconDir, ICONDI { int i; int validEntries = 0; + static const BYTE png_header[] = { 0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A }; for (i = 0; i < grpIconDir->idCount; i++) { @@ -621,6 +622,12 @@ static int populate_module_icons(HMODULE hModule, GRPICONDIR *grpIconDir, ICONDI } if ((pIcon = LockResource(hResData))) { + BOOL isPNG = iconBytes >= sizeof(png_header) && memcmp(pIcon, png_header, sizeof(png_header)) == 0; + if (isPNG) + { + WINE_FIXME("PNG icon not supported\n"); + continue; + } iconDirEntries[validEntries].bWidth = grpIconDir->idEntries[i].bWidth; iconDirEntries[validEntries].bHeight = grpIconDir->idEntries[i].bHeight; iconDirEntries[validEntries].bColorCount = grpIconDir->idEntries[i].bColorCount;