Index: trunk/modules/awt/src/main/java/common/java/awt/image/IndexColorModel.java =================================================================== --- trunk/modules/awt/src/main/java/common/java/awt/image/IndexColorModel.java (revision 495562) +++ trunk/modules/awt/src/main/java/common/java/awt/image/IndexColorModel.java (working copy) @@ -528,14 +528,15 @@ @Override public int getDataElement(int components[], int offset) { - int rgb = (components[0] << 16) | (components[1] << 8) | components[2]; - + int rgb = (components[offset] << 16) | (components[offset + 1]) << 8 + | components[offset + 2]; + if (hasAlpha) { - rgb |= (components[3] << 24); + rgb |= components[offset + 3] << 24; } else { rgb |= 0xff000000; } - + int pixel; switch (transferType) {