src/share/classes/com/sun/imageio/plugins/bmp/BMPImageReader.java
Print this page
*** 688,697 ****
--- 688,698 ----
checkIndex(imageIndex);
readHeader();
return metadata.compression == BI_RGB;
}
+ @SuppressWarnings("fallthrough")
public BufferedImage read(int imageIndex, ImageReadParam param)
throws IOException {
if (iis == null) {
throw new IllegalStateException(I18N.getString("BMPImageReader5"));
*** 765,782 ****
int idata[] = null; // buffer for int data
// the sampleModel can be null in case of embedded image
if (sampleModel != null) {
if (sampleModel.getDataType() == DataBuffer.TYPE_BYTE)
! bdata = (byte[])
! ((DataBufferByte)raster.getDataBuffer()).getData();
else if (sampleModel.getDataType() == DataBuffer.TYPE_USHORT)
! sdata = (short[])
! ((DataBufferUShort)raster.getDataBuffer()).getData();
else if (sampleModel.getDataType() == DataBuffer.TYPE_INT)
! idata = (int[])
! ((DataBufferInt)raster.getDataBuffer()).getData();
}
// There should only be one tile.
switch(imageType) {
--- 766,780 ----
int idata[] = null; // buffer for int data
// the sampleModel can be null in case of embedded image
if (sampleModel != null) {
if (sampleModel.getDataType() == DataBuffer.TYPE_BYTE)
! bdata = ((DataBufferByte)raster.getDataBuffer()).getData();
else if (sampleModel.getDataType() == DataBuffer.TYPE_USHORT)
! sdata = ((DataBufferUShort)raster.getDataBuffer()).getData();
else if (sampleModel.getDataType() == DataBuffer.TYPE_INT)
! idata = ((DataBufferInt)raster.getDataBuffer()).getData();
}
// There should only be one tile.
switch(imageType) {