IconImage[] images = new IconImage[gid.getCount()];
icf.setImages(images);
for (int j = 0; j < gid.getCount(); j++) {
GroupIconDirectoryEntry gide = gid.getEntry(j);
IconDirectoryEntry ide = new IconDirectoryEntry();
ide.copyFrom(gide);
icd.add(ide);
ResourceEntry[] icos = ResourceHelper.findResources(rd,
ResourceType.ICON, gide.getId());
if (icos == null || icos.length != 1) {
throw new IOException("Unexpected icons in resource file");
}
byte[] d = icos[0].getData();
ide.setBytesInRes(d.length);
// Check for PNG data
if (gide.getWidth() == 0 && gide.getHeight() == 0) {
IconImage ii = ResourceParser.readPNG(d);
images[j] = ii;
} else {