public class com.sun.imageio.plugins.png.PNGImageReader extends javax.imageio.ImageReader
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.imageio.plugins.png.PNGImageReader
super_class: javax.imageio.ImageReader
{
static final int IHDR_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1229472850
static final int PLTE_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1347179589
static final int IDAT_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1229209940
static final int IEND_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1229278788
static final int bKGD_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1649100612
static final int cHRM_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1665684045
static final int gAMA_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1732332865
static final int hIST_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1749635924
static final int iCCP_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1766015824
static final int iTXt_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1767135348
static final int pHYs_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1883789683
static final int sBIT_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1933723988
static final int sPLT_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1934642260
static final int sRGB_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1934772034
static final int tEXt_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1950701684
static final int tIME_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1950960965
static final int tRNS_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1951551059
static final int zTXt_TYPE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2052348020
static final int PNG_COLOR_GRAY;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final int PNG_COLOR_RGB;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2
static final int PNG_COLOR_PALETTE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 3
static final int PNG_COLOR_GRAY_ALPHA;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 4
static final int PNG_COLOR_RGB_ALPHA;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 6
static final int[] inputBandsForColorType;
descriptor: [I
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final int PNG_FILTER_NONE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final int PNG_FILTER_SUB;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1
static final int PNG_FILTER_UP;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2
static final int PNG_FILTER_AVERAGE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 3
static final int PNG_FILTER_PAETH;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 4
static final int[] adam7XOffset;
descriptor: [I
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final int[] adam7YOffset;
descriptor: [I
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final int[] adam7XSubsampling;
descriptor: [I
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final int[] adam7YSubsampling;
descriptor: [I
flags: (0x0018) ACC_STATIC, ACC_FINAL
private static final boolean debug;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
javax.imageio.stream.ImageInputStream stream;
descriptor: Ljavax/imageio/stream/ImageInputStream;
flags: (0x0000)
boolean ;
descriptor: Z
flags: (0x0000)
boolean gotMetadata;
descriptor: Z
flags: (0x0000)
javax.imageio.ImageReadParam lastParam;
descriptor: Ljavax/imageio/ImageReadParam;
flags: (0x0000)
long imageStartPosition;
descriptor: J
flags: (0x0000)
java.awt.Rectangle sourceRegion;
descriptor: Ljava/awt/Rectangle;
flags: (0x0000)
int sourceXSubsampling;
descriptor: I
flags: (0x0000)
int sourceYSubsampling;
descriptor: I
flags: (0x0000)
int sourceMinProgressivePass;
descriptor: I
flags: (0x0000)
int sourceMaxProgressivePass;
descriptor: I
flags: (0x0000)
int[] sourceBands;
descriptor: [I
flags: (0x0000)
int[] destinationBands;
descriptor: [I
flags: (0x0000)
java.awt.Point destinationOffset;
descriptor: Ljava/awt/Point;
flags: (0x0000)
com.sun.imageio.plugins.png.PNGMetadata metadata;
descriptor: Lcom/sun/imageio/plugins/png/PNGMetadata;
flags: (0x0000)
java.io.DataInputStream pixelStream;
descriptor: Ljava/io/DataInputStream;
flags: (0x0000)
java.awt.image.BufferedImage theImage;
descriptor: Ljava/awt/image/BufferedImage;
flags: (0x0000)
int pixelsDone;
descriptor: I
flags: (0x0000)
int totalPixels;
descriptor: I
flags: (0x0000)
private static final int[][] bandOffsets;
descriptor: [[I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=0, args_size=0
0: bipush 7
newarray 10
dup
iconst_0
1: iconst_1
iastore
dup
iconst_1
2: iconst_m1
iastore
dup
iconst_2
3: iconst_3
iastore
dup
iconst_3
4: iconst_1
iastore
dup
iconst_4
5: iconst_2
iastore
dup
iconst_5
6: iconst_m1
iastore
dup
bipush 6
7: iconst_4
iastore
8: putstatic com.sun.imageio.plugins.png.PNGImageReader.inputBandsForColorType:[I
9: bipush 7
newarray 10
dup
iconst_1
iconst_4
iastore
dup
iconst_3
iconst_2
iastore
dup
iconst_5
iconst_1
iastore
putstatic com.sun.imageio.plugins.png.PNGImageReader.adam7XOffset:[I
10: bipush 7
newarray 10
dup
iconst_2
iconst_4
iastore
dup
iconst_4
iconst_2
iastore
dup
bipush 6
iconst_1
iastore
putstatic com.sun.imageio.plugins.png.PNGImageReader.adam7YOffset:[I
11: bipush 8
newarray 10
dup
iconst_0
bipush 8
iastore
dup
iconst_1
bipush 8
iastore
dup
iconst_2
iconst_4
iastore
dup
iconst_3
iconst_4
iastore
dup
iconst_4
iconst_2
iastore
dup
iconst_5
iconst_2
iastore
dup
bipush 6
iconst_1
iastore
dup
bipush 7
iconst_1
iastore
putstatic com.sun.imageio.plugins.png.PNGImageReader.adam7XSubsampling:[I
12: bipush 8
newarray 10
dup
iconst_0
bipush 8
iastore
dup
iconst_1
bipush 8
iastore
dup
iconst_2
bipush 8
iastore
dup
iconst_3
iconst_4
iastore
dup
iconst_4
iconst_4
iastore
dup
iconst_5
iconst_2
iastore
dup
bipush 6
iconst_2
iastore
dup
bipush 7
iconst_1
iastore
putstatic com.sun.imageio.plugins.png.PNGImageReader.adam7YSubsampling:[I
13: iconst_5
anewarray int[]
dup
iconst_1
14: iconst_1
newarray 10
aastore
dup
iconst_2
15: iconst_2
newarray 10
dup
iconst_1
iconst_1
iastore
aastore
dup
iconst_3
16: iconst_3
newarray 10
dup
iconst_1
iconst_1
iastore
dup
iconst_2
iconst_2
iastore
aastore
dup
iconst_4
17: iconst_4
newarray 10
dup
iconst_1
iconst_1
iastore
dup
iconst_2
iconst_2
iastore
dup
iconst_3
iconst_3
iastore
aastore
18: putstatic com.sun.imageio.plugins.png.PNGImageReader.bandOffsets:[[I
19: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(javax.imageio.spi.ImageReaderSpi);
descriptor: (Ljavax/imageio/spi/ImageReaderSpi;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial javax.imageio.ImageReader.<init>:(Ljavax/imageio/spi/ImageReaderSpi;)V
1: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
2: aload 0
iconst_0
putfield com.sun.imageio.plugins.png.PNGImageReader.gotHeader:Z
3: aload 0
iconst_0
putfield com.sun.imageio.plugins.png.PNGImageReader.gotMetadata:Z
4: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.lastParam:Ljavax/imageio/ImageReadParam;
5: aload 0
ldc -1
putfield com.sun.imageio.plugins.png.PNGImageReader.imageStartPosition:J
6: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
7: aload 0
iconst_m1
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceXSubsampling:I
8: aload 0
iconst_m1
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceYSubsampling:I
9: aload 0
iconst_0
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceMinProgressivePass:I
10: aload 0
bipush 6
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceMaxProgressivePass:I
11: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceBands:[I
12: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
13: aload 0
new java.awt.Point
dup
iconst_0
iconst_0
invokespecial java.awt.Point.<init>:(II)V
putfield com.sun.imageio.plugins.png.PNGImageReader.destinationOffset:Ljava/awt/Point;
14: aload 0
new com.sun.imageio.plugins.png.PNGMetadata
dup
invokespecial com.sun.imageio.plugins.png.PNGMetadata.<init>:()V
putfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
15: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
16: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
17: aload 0
iconst_0
putfield com.sun.imageio.plugins.png.PNGImageReader.pixelsDone:I
18: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 19 1 originatingProvider Ljavax/imageio/spi/ImageReaderSpi;
MethodParameters:
Name Flags
originatingProvider
public void setInput(java.lang.Object, boolean, boolean);
descriptor: (Ljava/lang/Object;ZZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
iload 3
invokespecial javax.imageio.ImageReader.setInput:(Ljava/lang/Object;ZZ)V
1: aload 0
aload 1
checkcast javax.imageio.stream.ImageInputStream
putfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
2: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.resetStreamSettings:()V
3: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 4 1 input Ljava/lang/Object;
0 4 2 seekForwardOnly Z
0 4 3 ignoreMetadata Z
MethodParameters:
Name Flags
input
seekForwardOnly
ignoreMetadata
private java.lang.String readNullTerminatedString(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 3
start local 3 1: iconst_0
istore 5
start local 5 2: goto 5
start local 4 3: StackMap locals: java.io.ByteArrayOutputStream int int
StackMap stack:
iload 4
iconst_m1
if_icmpne 4
new java.io.EOFException
dup
invokespecial java.io.EOFException.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
aload 3
iload 4
invokevirtual java.io.ByteArrayOutputStream.write:(I)V
end local 4 5: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader java.lang.String int java.io.ByteArrayOutputStream top int
StackMap stack:
iload 2
iload 5
iinc 5 1
if_icmple 7
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.read:()I
dup
istore 4
start local 4 6: ifne 3
end local 4 7: StackMap locals:
StackMap stack:
new java.lang.String
dup
aload 3
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
aload 1
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
areturn
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 8 1 charset Ljava/lang/String;
0 8 2 maxLen I
1 8 3 baos Ljava/io/ByteArrayOutputStream;
3 5 4 b I
6 7 4 b I
2 8 5 count I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
charset
maxLen
private void ();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=11, args_size=1
start local 0 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.gotHeader:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
ifnonnull 4
3: new java.lang.IllegalStateException
dup
ldc "Input source not set!"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
bipush 8
newarray 8
astore 1
start local 1 5: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 1
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
6: aload 1
iconst_0
baload
bipush -119
if_icmpne 14
7: aload 1
iconst_1
baload
bipush 80
if_icmpne 14
8: aload 1
iconst_2
baload
bipush 78
if_icmpne 14
9: aload 1
iconst_3
baload
bipush 71
if_icmpne 14
10: aload 1
iconst_4
baload
bipush 13
if_icmpne 14
11: aload 1
iconst_5
baload
bipush 10
if_icmpne 14
12: aload 1
bipush 6
baload
bipush 26
if_icmpne 14
13: aload 1
bipush 7
baload
bipush 10
if_icmpeq 15
14: StackMap locals: byte[]
StackMap stack:
new javax.imageio.IIOException
dup
ldc "Bad PNG signature!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
istore 2
start local 2 16: iload 2
bipush 13
if_icmpeq 18
17: new javax.imageio.IIOException
dup
ldc "Bad length for IHDR chunk!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
18: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
istore 3
start local 3 19: iload 3
ldc 1229472850
if_icmpeq 21
20: new javax.imageio.IIOException
dup
ldc "Bad type for IHDR chunk!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals: int
StackMap stack:
aload 0
new com.sun.imageio.plugins.png.PNGMetadata
dup
invokespecial com.sun.imageio.plugins.png.PNGMetadata.<init>:()V
putfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
22: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
istore 4
start local 4 23: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
istore 5
start local 5 24: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 1
iconst_0
iconst_5
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
25: aload 1
iconst_0
baload
sipush 255
iand
istore 6
start local 6 26: aload 1
iconst_1
baload
sipush 255
iand
istore 7
start local 7 27: aload 1
iconst_2
baload
sipush 255
iand
istore 8
start local 8 28: aload 1
iconst_3
baload
sipush 255
iand
istore 9
start local 9 29: aload 1
iconst_4
baload
sipush 255
iand
istore 10
start local 10 30: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
iconst_4
invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
pop
31: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
invokeinterface javax.imageio.stream.ImageInputStream.flushBefore:(J)V
32: iload 4
ifgt 34
33: new javax.imageio.IIOException
dup
ldc "Image width <= 0!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
34: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader byte[] int int int int int int int int int
StackMap stack:
iload 5
ifgt 36
35: new javax.imageio.IIOException
dup
ldc "Image height <= 0!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
36: StackMap locals:
StackMap stack:
iload 6
iconst_1
if_icmpeq 39
iload 6
iconst_2
if_icmpeq 39
iload 6
iconst_4
if_icmpeq 39
37: iload 6
bipush 8
if_icmpeq 39
iload 6
bipush 16
if_icmpeq 39
38: new javax.imageio.IIOException
dup
ldc "Bit depth must be 1, 2, 4, 8, or 16!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
39: StackMap locals:
StackMap stack:
iload 7
ifeq 42
iload 7
iconst_2
if_icmpeq 42
iload 7
iconst_3
if_icmpeq 42
40: iload 7
iconst_4
if_icmpeq 42
iload 7
bipush 6
if_icmpeq 42
41: new javax.imageio.IIOException
dup
ldc "Color type must be 0, 2, 3, 4, or 6!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
42: StackMap locals:
StackMap stack:
iload 7
iconst_3
if_icmpne 44
iload 6
bipush 16
if_icmpne 44
43: new javax.imageio.IIOException
dup
ldc "Bad color type/bit depth combination!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
44: StackMap locals:
StackMap stack:
iload 7
iconst_2
if_icmpeq 47
45: iload 7
bipush 6
if_icmpeq 47
46: iload 7
iconst_4
if_icmpne 49
47: StackMap locals:
StackMap stack:
iload 6
bipush 8
if_icmpeq 49
iload 6
bipush 16
if_icmpeq 49
48: new javax.imageio.IIOException
dup
ldc "Bad color type/bit depth combination!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
49: StackMap locals:
StackMap stack:
iload 8
ifeq 51
50: new javax.imageio.IIOException
dup
ldc "Unknown compression method (not 0)!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
51: StackMap locals:
StackMap stack:
iload 9
ifeq 53
52: new javax.imageio.IIOException
dup
ldc "Unknown filter method (not 0)!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
53: StackMap locals:
StackMap stack:
iload 10
ifeq 55
iload 10
iconst_1
if_icmpeq 55
54: new javax.imageio.IIOException
dup
ldc "Unknown interlace method (not 0 or 1)!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
55: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_present:Z
56: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 4
putfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_width:I
57: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 5
putfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_height:I
58: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 6
putfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_bitDepth:I
59: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 7
putfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
60: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 8
putfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_compressionMethod:I
61: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 9
putfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_filterMethod:I
62: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 10
putfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_interlaceMethod:I
63: aload 0
iconst_1
putfield com.sun.imageio.plugins.png.PNGImageReader.gotHeader:Z
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 64: goto 67
StackMap locals: com.sun.imageio.plugins.png.PNGImageReader
StackMap stack: java.io.IOException
65: astore 1
start local 1 66: new javax.imageio.IIOException
dup
ldc "I/O error reading PNG header!"
aload 1
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 67: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 68 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
5 64 1 signature [B
16 64 2 IHDR_length I
19 64 3 IHDR_type I
23 64 4 width I
24 64 5 height I
26 64 6 bitDepth I
27 64 7 colorType I
28 64 8 compressionMethod I
29 64 9 filterMethod I
30 64 10 interlaceMethod I
66 67 1 e Ljava/io/IOException;
Exception table:
from to target type
4 64 65 Class java.io.IOException
Exceptions:
throws javax.imageio.IIOException
private void parse_PLTE_chunk(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_present:Z
ifeq 5
1: aload 0
2: ldc "A PNG image may not contain more than one PLTE chunk.\nThe chunk wil be ignored."
3: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processWarningOccurred:(Ljava/lang/String;)V
4: return
5: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
ifeq 7
6: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
iconst_4
if_icmpne 11
7: StackMap locals:
StackMap stack:
aload 0
8: ldc "A PNG gray or gray alpha image cannot have a PLTE chunk.\nThe chunk wil be ignored."
9: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processWarningOccurred:(Ljava/lang/String;)V
10: return
11: StackMap locals:
StackMap stack:
iload 1
newarray 8
astore 2
start local 2 12: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 2
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
13: iload 1
iconst_3
idiv
istore 3
start local 3 14: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
iconst_3
if_icmpne 22
15: iconst_1
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_bitDepth:I
ishl
istore 4
start local 4 16: iload 3
iload 4
if_icmple 21
17: aload 0
18: ldc "PLTE chunk contains too many entries for bit depth, ignoring extras."
19: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processWarningOccurred:(Ljava/lang/String;)V
20: iload 4
istore 3
21: StackMap locals: byte[] int int
StackMap stack:
iload 3
iload 4
invokestatic java.lang.Math.min:(II)I
istore 3
end local 4 22: StackMap locals:
StackMap stack:
iload 3
bipush 16
if_icmple 25
23: sipush 256
istore 4
start local 4 24: goto 32
end local 4 StackMap locals:
StackMap stack:
25: iload 3
iconst_4
if_icmple 28
26: bipush 16
istore 4
start local 4 27: goto 32
end local 4 StackMap locals:
StackMap stack:
28: iload 3
iconst_2
if_icmple 31
29: iconst_4
istore 4
start local 4 30: goto 32
end local 4 31: StackMap locals:
StackMap stack:
iconst_2
istore 4
start local 4 32: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_present:Z
33: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 4
newarray 8
putfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_red:[B
34: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 4
newarray 8
putfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_green:[B
35: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 4
newarray 8
putfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_blue:[B
36: iconst_0
istore 5
start local 5 37: iconst_0
istore 6
start local 6 38: goto 43
39: StackMap locals: int int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_red:[B
iload 6
aload 2
iload 5
iinc 5 1
baload
bastore
40: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_green:[B
iload 6
aload 2
iload 5
iinc 5 1
baload
bastore
41: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_blue:[B
iload 6
aload 2
iload 5
iinc 5 1
baload
bastore
42: iinc 6 1
StackMap locals:
StackMap stack:
43: iload 6
iload 3
if_icmplt 39
end local 6 44: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 45 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 45 1 chunkLength I
12 45 2 palette [B
14 45 3 numEntries I
16 22 4 maxEntries I
24 25 4 paletteEntries I
27 28 4 paletteEntries I
30 31 4 paletteEntries I
32 45 4 paletteEntries I
37 45 5 index I
38 44 6 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
chunkLength
private void parse_bKGD_chunk();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
iconst_3
if_icmpne 4
1: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_3
putfield com.sun.imageio.plugins.png.PNGMetadata.bKGD_colorType:I
2: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.bKGD_index:I
3: goto 13
StackMap locals:
StackMap stack:
4: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
ifeq 6
5: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
iconst_4
if_icmpne 9
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_0
putfield com.sun.imageio.plugins.png.PNGMetadata.bKGD_colorType:I
7: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.bKGD_gray:I
8: goto 13
9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_2
putfield com.sun.imageio.plugins.png.PNGMetadata.bKGD_colorType:I
10: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.bKGD_red:I
11: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.bKGD_green:I
12: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.bKGD_blue:I
13: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.bKGD_present:Z
14: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
Exceptions:
throws java.io.IOException
private void parse_cHRM_chunk();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.cHRM_whitePointX:I
1: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.cHRM_whitePointY:I
2: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.cHRM_redX:I
3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.cHRM_redY:I
4: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.cHRM_greenX:I
5: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.cHRM_greenY:I
6: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.cHRM_blueX:I
7: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.cHRM_blueY:I
8: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.cHRM_present:Z
9: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
Exceptions:
throws java.io.IOException
private void parse_gAMA_chunk();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
istore 1
start local 1 1: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 1
putfield com.sun.imageio.plugins.png.PNGMetadata.gAMA_gamma:I
2: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.gAMA_present:Z
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
1 4 1 gamma I
Exceptions:
throws java.io.IOException
private void parse_hIST_chunk(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_present:Z
ifne 2
1: new javax.imageio.IIOException
dup
ldc "hIST chunk without prior PLTE chunk!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 1
iconst_2
idiv
newarray 5
putfield com.sun.imageio.plugins.png.PNGMetadata.hIST_histogram:[C
3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.hIST_histogram:[C
4: iconst_0
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.hIST_histogram:[C
arraylength
5: invokeinterface javax.imageio.stream.ImageInputStream.readFully:([CII)V
6: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.hIST_present:Z
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 8 1 chunkLength I
Exceptions:
throws java.io.IOException, javax.imageio.IIOException
MethodParameters:
Name Flags
chunkLength
private void parse_iCCP_chunk(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
ldc "ISO-8859-1"
bipush 80
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readNullTerminatedString:(Ljava/lang/String;I)Ljava/lang/String;
astore 2
start local 2 1: iload 1
aload 2
invokevirtual java.lang.String.length:()I
isub
iconst_2
isub
istore 3
start local 3 2: iload 3
ifgt 4
3: new javax.imageio.IIOException
dup
ldc "iCCP chunk length is not proper"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: java.lang.String int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 2
putfield com.sun.imageio.plugins.png.PNGMetadata.iCCP_profileName:Ljava/lang/String;
5: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.iCCP_compressionMethod:I
6: iload 3
newarray 8
7: astore 4
start local 4 8: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 4
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
9: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 4
putfield com.sun.imageio.plugins.png.PNGMetadata.iCCP_compressedProfile:[B
10: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.iCCP_present:Z
11: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 12 1 chunkLength I
1 12 2 keyword Ljava/lang/String;
2 12 3 compressedProfileLength I
8 12 4 compressedProfile [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
chunkLength
private void parse_iTXt_chunk(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=16, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
lstore 2
start local 2 1: aload 0
ldc "ISO-8859-1"
bipush 80
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readNullTerminatedString:(Ljava/lang/String;I)Ljava/lang/String;
astore 4
start local 4 2: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.iTXt_keyword:Ljava/util/ArrayList;
aload 4
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
istore 5
start local 5 4: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.iTXt_compressionFlag:Ljava/util/ArrayList;
iload 5
iconst_1
if_icmpne 5
iconst_1
goto 6
StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int long java.lang.String int
StackMap stack: java.util.ArrayList
5: iconst_0
StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int long java.lang.String int
StackMap stack: java.util.ArrayList int
6: invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
7: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
istore 6
start local 6 8: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.iTXt_compressionMethod:Ljava/util/ArrayList;
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
9: aload 0
ldc "UTF8"
bipush 80
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readNullTerminatedString:(Ljava/lang/String;I)Ljava/lang/String;
astore 7
start local 7 10: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.iTXt_languageTag:Ljava/util/ArrayList;
aload 7
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
11: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
lstore 8
start local 8 12: lload 2
iload 1
i2l
ladd
lload 8
lsub
l2i
istore 10
start local 10 13: aload 0
ldc "UTF8"
iload 10
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readNullTerminatedString:(Ljava/lang/String;I)Ljava/lang/String;
14: astore 11
start local 11 15: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.iTXt_translatedKeyword:Ljava/util/ArrayList;
aload 11
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
16: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
lstore 8
17: lload 2
iload 1
i2l
ladd
lload 8
lsub
l2i
istore 13
start local 13 18: iload 13
ifge 20
19: new javax.imageio.IIOException
dup
ldc "iTXt chunk length is not proper"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
20: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int long java.lang.String int int java.lang.String long int java.lang.String top int
StackMap stack:
iload 13
newarray 8
astore 14
start local 14 21: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 14
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
22: iload 5
iconst_1
if_icmpne 25
23: new java.lang.String
dup
aload 14
invokestatic com.sun.imageio.plugins.png.PNGImageReader.inflate:([B)[B
ldc "UTF8"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
astore 12
start local 12 24: goto 26
end local 12 25: StackMap locals: byte[]
StackMap stack:
new java.lang.String
dup
aload 14
ldc "UTF8"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
astore 12
start local 12 26: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int long java.lang.String int int java.lang.String long int java.lang.String java.lang.String int byte[]
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.iTXt_text:Ljava/util/ArrayList;
aload 12
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
27: aload 4
ldc "Creation Time"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 32
28: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.iTXt_text:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
iconst_1
isub
istore 15
start local 15 29: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
30: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.iTXt_text:Ljava/util/ArrayList;
iload 15
invokevirtual java.util.ArrayList.listIterator:(I)Ljava/util/ListIterator;
31: invokevirtual com.sun.imageio.plugins.png.PNGMetadata.decodeImageCreationTimeFromTextChunk:(Ljava/util/ListIterator;)V
end local 15 32: StackMap locals:
StackMap stack:
return
end local 14 end local 13 end local 12 end local 11 end local 10 end local 8 end local 7 end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 33 1 chunkLength I
1 33 2 chunkStart J
2 33 4 keyword Ljava/lang/String;
4 33 5 compressionFlag I
8 33 6 compressionMethod I
10 33 7 languageTag Ljava/lang/String;
12 33 8 pos J
13 33 10 maxLen I
15 33 11 translatedKeyword Ljava/lang/String;
24 25 12 text Ljava/lang/String;
26 33 12 text Ljava/lang/String;
18 33 13 textLength I
21 33 14 b [B
29 32 15 index I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
chunkLength
private void parse_pHYs_chunk();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.pHYs_pixelsPerUnitXAxis:I
1: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.pHYs_pixelsPerUnitYAxis:I
2: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.pHYs_unitSpecifier:I
3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.pHYs_present:Z
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
Exceptions:
throws java.io.IOException
private void parse_sBIT_chunk();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
istore 1
start local 1 1: iload 1
ifeq 3
2: iload 1
iconst_4
if_icmpne 5
3: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.sBIT_grayBits:I
4: goto 11
StackMap locals:
StackMap stack:
5: iload 1
iconst_2
if_icmpeq 8
6: iload 1
iconst_3
if_icmpeq 8
7: iload 1
bipush 6
if_icmpne 11
8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.sBIT_redBits:I
9: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.sBIT_greenBits:I
10: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.sBIT_blueBits:I
11: StackMap locals:
StackMap stack:
iload 1
iconst_4
if_icmpeq 13
12: iload 1
bipush 6
if_icmpne 14
13: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.sBIT_alphaBits:I
14: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 1
putfield com.sun.imageio.plugins.png.PNGMetadata.sBIT_colorType:I
15: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.sBIT_present:Z
16: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
1 17 1 colorType I
Exceptions:
throws java.io.IOException
private void parse_sPLT_chunk(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
ldc "ISO-8859-1"
bipush 80
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readNullTerminatedString:(Ljava/lang/String;I)Ljava/lang/String;
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_paletteName:Ljava/lang/String;
1: iload 1
2: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_paletteName:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iconst_1
iadd
3: isub
istore 2
start local 2 4: iload 2
ifgt 6
5: new javax.imageio.IIOException
dup
ldc "sPLT chunk length is not proper"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
istore 3
start local 3 7: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 3
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_sampleDepth:I
8: iload 2
iconst_4
iload 3
bipush 8
idiv
imul
iconst_2
iadd
idiv
istore 4
start local 4 9: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 4
newarray 10
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_red:[I
10: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 4
newarray 10
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_green:[I
11: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 4
newarray 10
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_blue:[I
12: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 4
newarray 10
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_alpha:[I
13: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 4
newarray 10
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_frequency:[I
14: iload 3
bipush 8
if_icmpne 25
15: iconst_0
istore 5
start local 5 16: goto 23
17: StackMap locals: int int int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_red:[I
iload 5
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
iastore
18: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_green:[I
iload 5
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
iastore
19: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_blue:[I
iload 5
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
iastore
20: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_alpha:[I
iload 5
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
iastore
21: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_frequency:[I
iload 5
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
22: iinc 5 1
StackMap locals:
StackMap stack:
23: iload 5
iload 4
if_icmplt 17
end local 5 24: goto 37
StackMap locals:
StackMap stack:
25: iload 3
bipush 16
if_icmpne 36
26: iconst_0
istore 5
start local 5 27: goto 34
28: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_red:[I
iload 5
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
29: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_green:[I
iload 5
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
30: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_blue:[I
iload 5
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
31: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_alpha:[I
iload 5
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
32: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_frequency:[I
iload 5
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
33: iinc 5 1
StackMap locals:
StackMap stack:
34: iload 5
iload 4
if_icmplt 28
end local 5 35: goto 37
36: StackMap locals:
StackMap stack:
new javax.imageio.IIOException
dup
ldc "sPLT sample depth not 8 or 16!"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
37: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_present:Z
38: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 39 1 chunkLength I
4 39 2 remainingChunkLength I
7 39 3 sampleDepth I
9 39 4 numEntries I
16 24 5 i I
27 35 5 i I
Exceptions:
throws java.io.IOException, javax.imageio.IIOException
MethodParameters:
Name Flags
chunkLength
private void parse_sRGB_chunk();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.sRGB_renderingIntent:I
1: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.sRGB_present:Z
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
Exceptions:
throws java.io.IOException
private void parse_tEXt_chunk(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: aload 0
ldc "ISO-8859-1"
bipush 80
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readNullTerminatedString:(Ljava/lang/String;I)Ljava/lang/String;
astore 2
start local 2 1: iload 1
aload 2
invokevirtual java.lang.String.length:()I
isub
iconst_1
isub
istore 3
start local 3 2: iload 3
ifge 4
3: new javax.imageio.IIOException
dup
ldc "tEXt chunk length is not proper"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: java.lang.String int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tEXt_keyword:Ljava/util/ArrayList;
aload 2
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
5: iload 3
newarray 8
astore 4
start local 4 6: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 4
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
7: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tEXt_text:Ljava/util/ArrayList;
new java.lang.String
dup
aload 4
ldc "ISO-8859-1"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
8: aload 2
ldc "Creation Time"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 13
9: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tEXt_text:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
iconst_1
isub
istore 5
start local 5 10: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
11: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tEXt_text:Ljava/util/ArrayList;
iload 5
invokevirtual java.util.ArrayList.listIterator:(I)Ljava/util/ListIterator;
12: invokevirtual com.sun.imageio.plugins.png.PNGMetadata.decodeImageCreationTimeFromTextChunk:(Ljava/util/ListIterator;)V
end local 5 13: StackMap locals: byte[]
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 14 1 chunkLength I
1 14 2 keyword Ljava/lang/String;
2 14 3 textLength I
6 14 4 b [B
10 13 5 index I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
chunkLength
private void parse_tIME_chunk();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.tIME_year:I
1: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.tIME_month:I
2: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.tIME_day:I
3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.tIME_hour:I
4: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.tIME_minute:I
5: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.tIME_second:I
6: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.tIME_present:Z
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
Exceptions:
throws java.io.IOException
private void parse_tRNS_chunk(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
istore 2
start local 2 1: iload 2
iconst_3
if_icmpne 19
2: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_present:Z
ifne 7
3: aload 0
4: ldc "tRNS chunk without prior PLTE chunk, ignoring it."
5: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processWarningOccurred:(Ljava/lang/String;)V
6: return
7: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_red:[B
arraylength
istore 3
start local 3 8: iload 1
istore 4
start local 4 9: iload 4
iload 3
if_icmple 14
iload 3
ifle 14
10: aload 0
11: ldc "tRNS chunk has more entries than prior PLTE chunk, ignoring extras."
12: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processWarningOccurred:(Ljava/lang/String;)V
13: iload 3
istore 4
14: StackMap locals: int int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 4
newarray 8
putfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_alpha:[B
15: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_3
putfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_colorType:I
16: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_alpha:[B
iconst_0
iload 4
invokeinterface javax.imageio.stream.ImageInputStream.read:([BII)I
pop
17: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
iload 1
iload 4
isub
invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
pop
end local 4 end local 3 18: goto 45
StackMap locals:
StackMap stack:
19: iload 2
ifne 29
20: iload 1
iconst_2
if_icmpeq 26
21: aload 0
22: ldc "tRNS chunk for gray image must have length 2, ignoring chunk."
23: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processWarningOccurred:(Ljava/lang/String;)V
24: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
iload 1
invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
pop
25: return
26: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_gray:I
27: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_0
putfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_colorType:I
28: goto 45
StackMap locals:
StackMap stack:
29: iload 2
iconst_2
if_icmpne 41
30: iload 1
bipush 6
if_icmpeq 36
31: aload 0
32: ldc "tRNS chunk for RGB image must have length 6, ignoring chunk."
33: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processWarningOccurred:(Ljava/lang/String;)V
34: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
iload 1
invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
pop
35: return
36: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_red:I
37: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_green:I
38: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
putfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_blue:I
39: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_2
putfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_colorType:I
40: goto 45
41: StackMap locals:
StackMap stack:
aload 0
42: ldc "Gray+Alpha and RGBS images may not have a tRNS chunk, ignoring it."
43: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processWarningOccurred:(Ljava/lang/String;)V
44: return
45: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iconst_1
putfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_present:Z
46: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 47 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 47 1 chunkLength I
1 47 2 colorType I
8 18 3 maxEntries I
9 18 4 numEntries I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
chunkLength
private static byte[] inflate(byte[]);
descriptor: ([B)[B
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: new java.io.ByteArrayInputStream
dup
aload 0
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
astore 1
start local 1 1: new java.util.zip.InflaterInputStream
dup
aload 1
invokespecial java.util.zip.InflaterInputStream.<init>:(Ljava/io/InputStream;)V
astore 2
start local 2 2: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 3
start local 3 3: goto 5
start local 4 4: StackMap locals: byte[] java.io.InputStream java.io.InputStream java.io.ByteArrayOutputStream int
StackMap stack:
aload 3
iload 4
invokevirtual java.io.ByteArrayOutputStream.write:(I)V
end local 4 5: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.io.InputStream.read:()I
dup
istore 4
start local 4 6: iconst_m1
if_icmpne 4
7: goto 11
end local 4 StackMap locals:
StackMap stack: java.lang.Throwable
8: astore 5
9: aload 2
invokevirtual java.io.InputStream.close:()V
10: aload 5
athrow
start local 4 11: StackMap locals: int
StackMap stack:
aload 2
invokevirtual java.io.InputStream.close:()V
12: aload 3
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 b [B
1 13 1 bais Ljava/io/InputStream;
2 13 2 iis Ljava/io/InputStream;
3 13 3 baos Ljava/io/ByteArrayOutputStream;
4 5 4 c I
6 8 4 c I
11 13 4 c I
Exception table:
from to target type
3 8 8 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
b
private void parse_zTXt_chunk(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 0
ldc "ISO-8859-1"
bipush 80
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readNullTerminatedString:(Ljava/lang/String;I)Ljava/lang/String;
astore 2
start local 2 1: iload 1
aload 2
invokevirtual java.lang.String.length:()I
isub
iconst_2
isub
istore 3
start local 3 2: iload 3
ifge 4
3: new javax.imageio.IIOException
dup
ldc "zTXt chunk length is not proper"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: java.lang.String int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.zTXt_keyword:Ljava/util/ArrayList;
aload 2
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
5: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
istore 4
start local 4 6: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.zTXt_compressionMethod:Ljava/util/ArrayList;
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
7: iload 3
newarray 8
astore 5
start local 5 8: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 5
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
9: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.zTXt_text:Ljava/util/ArrayList;
new java.lang.String
dup
aload 5
invokestatic com.sun.imageio.plugins.png.PNGImageReader.inflate:([B)[B
ldc "ISO-8859-1"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
10: aload 2
ldc "Creation Time"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 15
11: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.zTXt_text:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
iconst_1
isub
istore 6
start local 6 12: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
13: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.zTXt_text:Ljava/util/ArrayList;
iload 6
invokevirtual java.util.ArrayList.listIterator:(I)Ljava/util/ListIterator;
14: invokevirtual com.sun.imageio.plugins.png.PNGMetadata.decodeImageCreationTimeFromTextChunk:(Ljava/util/ListIterator;)V
end local 6 15: StackMap locals: int byte[]
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 16 1 chunkLength I
1 16 2 keyword Ljava/lang/String;
2 16 3 textLength I
6 16 4 method I
8 16 5 b [B
12 15 6 index I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
chunkLength
private void readMetadata();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=1
start local 0 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.gotMetadata:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readHeader:()V
3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
istore 1
start local 1 4: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.ignoreMetadata:Z
ifeq 23
iload 1
iconst_3
if_icmpeq 23
5: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
istore 2
start local 2 6: iload 2
iflt 7
iload 2
iconst_4
iadd
ifge 8
7: StackMap locals: int
StackMap stack:
new javax.imageio.IIOException
dup
new java.lang.StringBuilder
dup
ldc "Invalid chunk length "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
istore 3
start local 3 9: iload 3
ldc 1229209940
if_icmpne 13
10: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
bipush -8
invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
pop
11: aload 0
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
putfield com.sun.imageio.plugins.png.PNGImageReader.imageStartPosition:J
12: goto 21
13: StackMap locals: int
StackMap stack:
iload 3
ldc 1951551059
if_icmpne 17
14: aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_tRNS_chunk:(I)V
15: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
iconst_4
invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
pop
16: goto 5
17: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
iload 2
iconst_4
iadd
invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
pop
end local 3 end local 2 18: goto 5
19: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int
StackMap stack: java.io.IOException
astore 2
start local 2 20: new javax.imageio.IIOException
dup
ldc "Error skipping PNG metadata"
aload 2
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 21: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.imageio.plugins.png.PNGImageReader.gotMetadata:Z
22: return
23: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
istore 2
start local 2 24: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
istore 3
start local 3 25: iload 2
ifge 27
26: new javax.imageio.IIOException
dup
new java.lang.StringBuilder
dup
ldc "Invalid chunk length "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
27: StackMap locals: int int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.mark:()V
28: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
iload 2
i2l
ladd
invokeinterface javax.imageio.stream.ImageInputStream.seek:(J)V
29: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
istore 4
start local 4 30: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.reset:()V
31: goto 34
end local 4 StackMap locals:
StackMap stack: java.io.IOException
32: pop
33: new javax.imageio.IIOException
dup
new java.lang.StringBuilder
dup
ldc "Invalid chunk length "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
start local 4 34: StackMap locals: int
StackMap stack:
iload 3
lookupswitch { // 17
1229209940: 35
1229278788: 42
1347179589: 45
1649100612: 47
1665684045: 49
1732332865: 51
1749635924: 53
1766015824: 55
1767135348: 57
1883789683: 62
1933723988: 64
1934642260: 66
1934772034: 68
1950701684: 70
1950960965: 72
1951551059: 74
2052348020: 76
default: 81
}
35: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.imageStartPosition:J
ldc -1
lcmp
ifne 40
36: iload 1
iconst_3
if_icmpne 39
37: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_present:Z
ifne 39
38: new javax.imageio.IIOException
dup
ldc "Required PLTE chunk missing"
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
39: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
ldc 8
lsub
putfield com.sun.imageio.plugins.png.PNGImageReader.imageStartPosition:J
40: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
iload 2
invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
pop
41: goto 95
42: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.imageStartPosition:J
invokeinterface javax.imageio.stream.ImageInputStream.seek:(J)V
43: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
invokeinterface javax.imageio.stream.ImageInputStream.flushBefore:(J)V
44: goto 101
45: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_PLTE_chunk:(I)V
46: goto 95
47: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_bKGD_chunk:()V
48: goto 95
49: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_cHRM_chunk:()V
50: goto 95
51: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_gAMA_chunk:()V
52: goto 95
53: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_hIST_chunk:(I)V
54: goto 95
55: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_iCCP_chunk:(I)V
56: goto 95
57: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.ignoreMetadata:Z
ifeq 60
58: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
iload 2
invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
pop
59: goto 95
60: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_iTXt_chunk:(I)V
61: goto 95
62: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_pHYs_chunk:()V
63: goto 95
64: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_sBIT_chunk:()V
65: goto 95
66: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_sPLT_chunk:(I)V
67: goto 95
68: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_sRGB_chunk:()V
69: goto 95
70: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_tEXt_chunk:(I)V
71: goto 95
72: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_tIME_chunk:()V
73: goto 95
74: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_tRNS_chunk:(I)V
75: goto 95
76: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.ignoreMetadata:Z
ifeq 79
77: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
iload 2
invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
pop
78: goto 95
79: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_zTXt_chunk:(I)V
80: goto 95
81: StackMap locals:
StackMap stack:
iload 2
newarray 8
astore 5
start local 5 82: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 5
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
83: new java.lang.StringBuilder
dup
iconst_4
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 6
start local 6 84: aload 6
iload 3
bipush 24
iushr
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
85: aload 6
iload 3
bipush 16
ishr
sipush 255
iand
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
86: aload 6
iload 3
bipush 8
ishr
sipush 255
iand
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
87: aload 6
iload 3
sipush 255
iand
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
88: iload 3
bipush 28
iushr
istore 7
start local 7 89: iload 7
ifne 93
90: aload 0
91: ldc "Encountered unknown chunk with critical bit set!"
92: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processWarningOccurred:(Ljava/lang/String;)V
93: StackMap locals: byte[] java.lang.StringBuilder int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.unknownChunkType:Ljava/util/ArrayList;
aload 6
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
94: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.unknownChunkData:Ljava/util/ArrayList;
aload 5
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 7 end local 6 end local 5 95: StackMap locals:
StackMap stack:
iload 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
if_icmpeq 23
96: new javax.imageio.IIOException
dup
new java.lang.StringBuilder
dup
ldc "Failed to read a chunk of type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
97: iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
98: invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 99: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int
StackMap stack: java.io.IOException
astore 2
start local 2 100: new javax.imageio.IIOException
dup
ldc "Error reading PNG metadata"
aload 2
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 101: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.imageio.plugins.png.PNGImageReader.gotMetadata:Z
102: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 103 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
4 103 1 colorType I
6 18 2 chunkLength I
9 18 3 chunkType I
20 21 2 e Ljava/io/IOException;
24 99 2 chunkLength I
25 99 3 chunkType I
30 32 4 chunkCRC I
34 99 4 chunkCRC I
82 95 5 b [B
84 95 6 chunkName Ljava/lang/StringBuilder;
89 95 7 ancillaryBit I
100 101 2 e Ljava/io/IOException;
Exception table:
from to target type
5 19 19 Class java.io.IOException
27 31 32 Class java.io.IOException
23 99 99 Class java.io.IOException
Exceptions:
throws javax.imageio.IIOException
private static void decodeSubFilter(byte[], int, int, int);
descriptor: ([BIII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
istore 4
start local 4 1: goto 6
2: StackMap locals: int
StackMap stack:
aload 0
iload 4
iload 1
iadd
baload
sipush 255
iand
istore 5
start local 5 3: iload 5
aload 0
iload 4
iload 1
iadd
iload 3
isub
baload
sipush 255
iand
iadd
istore 5
4: aload 0
iload 4
iload 1
iadd
iload 5
i2b
bastore
end local 5 5: iinc 4 1
StackMap locals:
StackMap stack:
6: iload 4
iload 2
if_icmplt 2
end local 4 7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 curr [B
0 8 1 coff I
0 8 2 count I
0 8 3 bpp I
1 7 4 i I
3 5 5 val I
MethodParameters:
Name Flags
curr
coff
count
bpp
private static void decodeUpFilter(byte[], int, byte[], int, int);
descriptor: ([BI[BII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_0
istore 5
start local 5 1: goto 6
2: StackMap locals: int
StackMap stack:
aload 0
iload 5
iload 1
iadd
baload
sipush 255
iand
istore 6
start local 6 3: aload 2
iload 5
iload 3
iadd
baload
sipush 255
iand
istore 7
start local 7 4: aload 0
iload 5
iload 1
iadd
iload 6
iload 7
iadd
i2b
bastore
end local 7 end local 6 5: iinc 5 1
StackMap locals:
StackMap stack:
6: iload 5
iload 4
if_icmplt 2
end local 5 7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 curr [B
0 8 1 coff I
0 8 2 prev [B
0 8 3 poff I
0 8 4 count I
1 7 5 i I
3 5 6 raw I
4 5 7 prior I
MethodParameters:
Name Flags
curr
coff
prev
poff
count
private static void decodeAverageFilter(byte[], int, byte[], int, int, int);
descriptor: ([BI[BIII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iconst_0
istore 9
start local 9 1: goto 6
2: StackMap locals: byte[] int byte[] int int int top top top int
StackMap stack:
aload 0
iload 9
iload 1
iadd
baload
sipush 255
iand
istore 6
start local 6 3: aload 2
iload 9
iload 3
iadd
baload
sipush 255
iand
istore 8
start local 8 4: aload 0
iload 9
iload 1
iadd
iload 6
iload 8
iconst_2
idiv
iadd
i2b
bastore
5: iinc 9 1
end local 8 end local 6 StackMap locals:
StackMap stack:
6: iload 9
iload 5
if_icmplt 2
end local 9 7: iload 5
istore 9
start local 9 8: goto 14
9: StackMap locals:
StackMap stack:
aload 0
iload 9
iload 1
iadd
baload
sipush 255
iand
istore 6
start local 6 10: aload 0
iload 9
iload 1
iadd
iload 5
isub
baload
sipush 255
iand
istore 7
start local 7 11: aload 2
iload 9
iload 3
iadd
baload
sipush 255
iand
istore 8
start local 8 12: aload 0
iload 9
iload 1
iadd
iload 6
iload 7
iload 8
iadd
iconst_2
idiv
iadd
i2b
bastore
13: iinc 9 1
end local 8 end local 7 end local 6 StackMap locals:
StackMap stack:
14: iload 9
iload 4
if_icmplt 9
end local 9 15: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 curr [B
0 16 1 coff I
0 16 2 prev [B
0 16 3 poff I
0 16 4 count I
0 16 5 bpp I
3 6 6 raw I
10 14 6 raw I
11 14 7 priorPixel I
4 6 8 priorRow I
12 14 8 priorRow I
1 7 9 i I
8 15 9 i I
MethodParameters:
Name Flags
curr
coff
prev
poff
count
bpp
private static int paethPredictor(int, int, int);
descriptor: (III)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iload 0
iload 1
iadd
iload 2
isub
istore 3
start local 3 1: iload 3
iload 0
isub
invokestatic java.lang.Math.abs:(I)I
istore 4
start local 4 2: iload 3
iload 1
isub
invokestatic java.lang.Math.abs:(I)I
istore 5
start local 5 3: iload 3
iload 2
isub
invokestatic java.lang.Math.abs:(I)I
istore 6
start local 6 4: iload 4
iload 5
if_icmpgt 6
iload 4
iload 6
if_icmpgt 6
5: iload 0
ireturn
6: StackMap locals: int int int int int int int
StackMap stack:
iload 5
iload 6
if_icmpgt 8
7: iload 1
ireturn
8: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 a I
0 9 1 b I
0 9 2 c I
1 9 3 p I
2 9 4 pa I
3 9 5 pb I
4 9 6 pc I
MethodParameters:
Name Flags
a
b
c
private static void decodePaethFilter(byte[], int, byte[], int, int, int);
descriptor: ([BI[BIII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=11, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iconst_0
istore 10
start local 10 1: goto 6
2: StackMap locals: byte[] int byte[] int int int top top top top int
StackMap stack:
aload 0
iload 10
iload 1
iadd
baload
sipush 255
iand
istore 6
start local 6 3: aload 2
iload 10
iload 3
iadd
baload
sipush 255
iand
istore 8
start local 8 4: aload 0
iload 10
iload 1
iadd
iload 6
iload 8
iadd
i2b
bastore
5: iinc 10 1
end local 8 end local 6 StackMap locals:
StackMap stack:
6: iload 10
iload 5
if_icmplt 2
end local 10 7: iload 5
istore 10
start local 10 8: goto 18
9: StackMap locals:
StackMap stack:
aload 0
iload 10
iload 1
iadd
baload
sipush 255
iand
istore 6
start local 6 10: aload 0
iload 10
iload 1
iadd
iload 5
isub
baload
sipush 255
iand
istore 7
start local 7 11: aload 2
iload 10
iload 3
iadd
baload
sipush 255
iand
istore 8
start local 8 12: aload 2
iload 10
iload 3
iadd
iload 5
isub
baload
sipush 255
iand
istore 9
start local 9 13: aload 0
iload 10
iload 1
iadd
iload 6
iload 7
14: iload 8
15: iload 9
16: invokestatic com.sun.imageio.plugins.png.PNGImageReader.paethPredictor:(III)I
iadd
i2b
bastore
17: iinc 10 1
end local 9 end local 8 end local 7 end local 6 StackMap locals:
StackMap stack:
18: iload 10
iload 4
if_icmplt 9
end local 10 19: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 curr [B
0 20 1 coff I
0 20 2 prev [B
0 20 3 poff I
0 20 4 count I
0 20 5 bpp I
3 6 6 raw I
10 18 6 raw I
11 18 7 priorPixel I
4 6 8 priorRow I
12 18 8 priorRow I
13 18 9 priorRowPixel I
1 7 10 i I
8 19 10 i I
MethodParameters:
Name Flags
curr
coff
prev
poff
count
bpp
private java.awt.image.WritableRaster createRaster(int, int, int, int, int);
descriptor: (IIIII)Ljava/awt/image/WritableRaster;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aconst_null
astore 7
start local 7 1: new java.awt.Point
dup
iconst_0
iconst_0
invokespecial java.awt.Point.<init>:(II)V
astore 8
start local 8 2: iload 5
bipush 8
if_icmpge 10
iload 3
iconst_1
if_icmpne 10
3: new java.awt.image.DataBufferByte
dup
iload 2
iload 4
imul
invokespecial java.awt.image.DataBufferByte.<init>:(I)V
astore 6
start local 6 4: aload 6
5: iload 1
iload 2
6: iload 5
7: aload 8
8: invokestatic java.awt.image.Raster.createPackedRaster:(Ljava/awt/image/DataBuffer;IIILjava/awt/Point;)Ljava/awt/image/WritableRaster;
astore 7
9: goto 28
end local 6 StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int top java.awt.image.WritableRaster java.awt.Point
StackMap stack:
10: iload 5
bipush 8
if_icmpgt 20
11: new java.awt.image.DataBufferByte
dup
iload 2
iload 4
imul
invokespecial java.awt.image.DataBufferByte.<init>:(I)V
astore 6
start local 6 12: aload 6
13: iload 1
iload 2
14: iload 4
15: iload 3
16: getstatic com.sun.imageio.plugins.png.PNGImageReader.bandOffsets:[[I
iload 3
aaload
17: aload 8
18: invokestatic java.awt.image.Raster.createInterleavedRaster:(Ljava/awt/image/DataBuffer;IIII[ILjava/awt/Point;)Ljava/awt/image/WritableRaster;
astore 7
19: goto 28
end local 6 20: StackMap locals:
StackMap stack:
new java.awt.image.DataBufferUShort
dup
iload 2
iload 4
imul
invokespecial java.awt.image.DataBufferUShort.<init>:(I)V
astore 6
start local 6 21: aload 6
22: iload 1
iload 2
23: iload 4
24: iload 3
25: getstatic com.sun.imageio.plugins.png.PNGImageReader.bandOffsets:[[I
iload 3
aaload
26: aload 8
27: invokestatic java.awt.image.Raster.createInterleavedRaster:(Ljava/awt/image/DataBuffer;IIII[ILjava/awt/Point;)Ljava/awt/image/WritableRaster;
astore 7
28: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int java.awt.image.DataBuffer java.awt.image.WritableRaster java.awt.Point
StackMap stack:
aload 7
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 29 1 width I
0 29 2 height I
0 29 3 bands I
0 29 4 scanlineStride I
0 29 5 bitDepth I
4 10 6 dataBuffer Ljava/awt/image/DataBuffer;
12 20 6 dataBuffer Ljava/awt/image/DataBuffer;
21 29 6 dataBuffer Ljava/awt/image/DataBuffer;
1 29 7 ras Ljava/awt/image/WritableRaster;
2 29 8 origin Ljava/awt/Point;
MethodParameters:
Name Flags
width
height
bands
scanlineStride
bitDepth
private void skipPass(int, int);
descriptor: (II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iload 1
ifeq 1
iload 2
ifne 2
1: StackMap locals:
StackMap stack:
return
2: StackMap locals:
StackMap stack:
getstatic com.sun.imageio.plugins.png.PNGImageReader.inputBandsForColorType:[I
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
iaload
istore 3
start local 3 3: iload 3
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_bitDepth:I
imul
iload 1
invokestatic java.lang.Math.multiplyExact:(II)I
4: istore 4
start local 4 5: iload 4
bipush 7
iadd
bipush 8
idiv
istore 5
start local 5 6: iconst_0
istore 6
start local 6 7: goto 10
8: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
iconst_1
iload 5
iadd
invokevirtual java.io.DataInputStream.skipBytes:(I)I
pop
9: iinc 6 1
StackMap locals:
StackMap stack:
10: iload 6
iload 2
if_icmplt 8
end local 6 11: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 12 1 passWidth I
0 12 2 passHeight I
3 12 3 inputBands I
5 12 4 bitsPerRow I
6 12 5 bytesPerRow I
7 11 6 srcY I
Exceptions:
throws java.io.IOException, javax.imageio.IIOException
MethodParameters:
Name Flags
passWidth
passHeight
private void updateImageProgress(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
dup
getfield com.sun.imageio.plugins.png.PNGImageReader.pixelsDone:I
iload 1
iadd
putfield com.sun.imageio.plugins.png.PNGImageReader.pixelsDone:I
1: aload 0
ldc 100.0
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.pixelsDone:I
i2f
fmul
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.totalPixels:I
i2f
fdiv
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processImageProgress:(F)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 3 1 newPixels I
MethodParameters:
Name Flags
newPixels
private void decodePass(int, int, int, int, int, int, int);
descriptor: (IIIIIII)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=14, locals=51, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: iload 6
ifeq 1
iload 7
ifne 2
1: StackMap locals:
StackMap stack:
return
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
iconst_0
iconst_0
invokevirtual java.awt.image.BufferedImage.getWritableTile:(II)Ljava/awt/image/WritableRaster;
astore 8
start local 8 3: aload 8
invokevirtual java.awt.image.WritableRaster.getMinX:()I
istore 9
start local 9 4: iload 9
aload 8
invokevirtual java.awt.image.WritableRaster.getWidth:()I
iadd
iconst_1
isub
istore 10
start local 10 5: aload 8
invokevirtual java.awt.image.WritableRaster.getMinY:()I
istore 11
start local 11 6: iload 11
aload 8
invokevirtual java.awt.image.WritableRaster.getHeight:()I
iadd
iconst_1
isub
istore 12
start local 12 7: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
8: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationOffset:Ljava/awt/Point;
9: iload 9
iload 11
10: iload 10
iload 12
11: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceXSubsampling:I
12: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceYSubsampling:I
13: iload 2
iload 3
14: iload 6
iload 7
15: iload 4
iload 5
16: invokestatic com.sun.imageio.plugins.common.ReaderUtil.computeUpdatedPixels:(Ljava/awt/Rectangle;Ljava/awt/Point;IIIIIIIIIIII)[I
17: astore 13
start local 13 18: aload 13
iconst_0
iaload
istore 14
start local 14 19: aload 13
iconst_1
iaload
istore 15
start local 15 20: aload 13
iconst_2
iaload
istore 16
start local 16 21: aload 13
iconst_4
iaload
istore 17
start local 17 22: aload 13
iconst_5
iaload
istore 18
start local 18 23: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_bitDepth:I
istore 19
start local 19 24: getstatic com.sun.imageio.plugins.png.PNGImageReader.inputBandsForColorType:[I
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
iaload
istore 20
start local 20 25: iload 19
bipush 16
if_icmpne 26
iconst_2
goto 27
StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int int int java.awt.image.WritableRaster int int int int int[] int int int int int int int
StackMap stack:
26: iconst_1
StackMap locals:
StackMap stack: int
27: istore 21
start local 21 28: iload 21
iload 20
imul
istore 21
29: iload 20
iload 19
imul
iload 6
invokestatic java.lang.Math.multiplyExact:(II)I
istore 22
start local 22 30: iload 22
bipush 7
iadd
bipush 8
idiv
istore 23
start local 23 31: iload 19
bipush 16
if_icmpne 32
iload 23
iconst_2
idiv
goto 33
StackMap locals: int int int
StackMap stack:
32: iload 23
StackMap locals:
StackMap stack: int
33: istore 24
start local 24 34: iload 16
ifne 44
35: iconst_0
istore 25
start local 25 36: goto 42
37: StackMap locals: int int
StackMap stack:
aload 0
iload 6
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.updateImageProgress:(I)V
38: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.abortRequested:()Z
ifeq 40
39: return
40: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
iconst_1
iload 23
iadd
invokevirtual java.io.DataInputStream.skipBytes:(I)I
pop
41: iinc 25 1
StackMap locals:
StackMap stack:
42: iload 25
iload 7
if_icmplt 37
end local 25 43: return
44: StackMap locals:
StackMap stack:
iload 14
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationOffset:Ljava/awt/Point;
getfield java.awt.Point.x:I
isub
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceXSubsampling:I
imul
45: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
getfield java.awt.Rectangle.x:I
46: iadd
47: istore 25
start local 25 48: iload 25
iload 2
isub
iload 4
idiv
istore 26
start local 26 49: iload 17
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceXSubsampling:I
imul
iload 4
idiv
istore 27
start local 27 50: aconst_null
astore 28
start local 28 51: aconst_null
astore 29
start local 29 52: iload 23
newarray 8
astore 30
start local 30 53: iload 23
newarray 8
astore 31
start local 31 54: aload 0
iload 6
iconst_1
iload 20
55: iload 24
56: iload 19
57: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.createRaster:(IIIII)Ljava/awt/image/WritableRaster;
astore 32
start local 32 58: aload 32
iconst_0
iconst_0
aconst_null
invokevirtual java.awt.image.WritableRaster.getPixel:(II[I)[I
astore 33
start local 33 59: aload 32
invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
astore 34
start local 34 60: aload 34
invokevirtual java.awt.image.DataBuffer.getDataType:()I
istore 35
start local 35 61: iload 35
ifne 64
62: aload 34
checkcast java.awt.image.DataBufferByte
invokevirtual java.awt.image.DataBufferByte.getData:()[B
astore 28
63: goto 65
64: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int int int java.awt.image.WritableRaster int int int int int[] int int int int int int int int int int int int int int byte[] short[] byte[] byte[] java.awt.image.WritableRaster int[] java.awt.image.DataBuffer int
StackMap stack:
aload 34
checkcast java.awt.image.DataBufferUShort
invokevirtual java.awt.image.DataBufferUShort.getData:()[S
astore 29
65: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
66: iload 1
67: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceMinProgressivePass:I
68: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceMaxProgressivePass:I
69: iload 14
iload 15
70: iload 17
iload 18
71: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
72: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processPassStarted:(Ljava/awt/image/BufferedImage;IIIIIII[I)V
73: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceBands:[I
ifnull 79
74: aload 32
iconst_0
iconst_0
75: aload 32
invokevirtual java.awt.image.WritableRaster.getWidth:()I
iconst_1
76: iconst_0
iconst_0
77: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceBands:[I
78: invokevirtual java.awt.image.WritableRaster.createWritableChild:(IIIIII[I)Ljava/awt/image/WritableRaster;
astore 32
79: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
ifnull 86
80: aload 8
iconst_0
iconst_0
81: aload 8
invokevirtual java.awt.image.WritableRaster.getWidth:()I
82: aload 8
invokevirtual java.awt.image.WritableRaster.getHeight:()I
83: iconst_0
iconst_0
84: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
85: invokevirtual java.awt.image.WritableRaster.createWritableChild:(IIIIII[I)Ljava/awt/image/WritableRaster;
astore 8
86: StackMap locals:
StackMap stack:
iconst_0
istore 36
start local 36 87: aload 8
invokevirtual java.awt.image.WritableRaster.getSampleModel:()Ljava/awt/image/SampleModel;
invokevirtual java.awt.image.SampleModel.getSampleSize:()[I
astore 37
start local 37 88: aload 37
arraylength
istore 38
start local 38 89: iconst_0
istore 39
start local 39 90: goto 95
91: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int int int java.awt.image.WritableRaster int int int int int[] int int int int int int int int int int int int int int byte[] short[] byte[] byte[] java.awt.image.WritableRaster int[] java.awt.image.DataBuffer int int int[] int int
StackMap stack:
aload 37
iload 39
iaload
iload 19
if_icmpeq 94
92: iconst_1
istore 36
93: goto 96
94: StackMap locals:
StackMap stack:
iinc 39 1
StackMap locals:
StackMap stack:
95: iload 39
iload 38
if_icmplt 91
end local 39 96: StackMap locals:
StackMap stack:
aconst_null
astore 39
start local 39 97: iload 36
ifeq 114
98: iconst_1
iload 19
ishl
iconst_1
isub
istore 40
start local 40 99: iload 40
iconst_2
idiv
istore 41
start local 41 100: iload 38
anewarray int[]
astore 39
101: iconst_0
istore 42
start local 42 102: goto 113
103: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int int int java.awt.image.WritableRaster int int int int int[] int int int int int int int int int int int int int int byte[] short[] byte[] byte[] java.awt.image.WritableRaster int[] java.awt.image.DataBuffer int int int[] int int[][] int int int
StackMap stack:
iconst_1
aload 37
iload 42
iaload
ishl
iconst_1
isub
istore 43
start local 43 104: aload 39
iload 42
iload 40
iconst_1
iadd
newarray 10
aastore
105: iconst_0
istore 44
start local 44 106: goto 111
107: StackMap locals: int int
StackMap stack:
aload 39
iload 42
aaload
iload 44
108: iload 44
iload 43
imul
iload 41
iadd
iload 40
idiv
109: iastore
110: iinc 44 1
StackMap locals:
StackMap stack:
111: iload 44
iload 40
if_icmple 107
end local 44 end local 43 112: iinc 42 1
StackMap locals:
StackMap stack:
113: iload 42
iload 38
if_icmplt 103
end local 42 end local 41 end local 40 114: StackMap locals:
StackMap stack:
iload 27
iconst_1
if_icmpne 119
115: iload 17
iconst_1
if_icmpne 119
116: iload 36
ifne 119
117: aload 8
instanceof sun.awt.image.ByteInterleavedRaster
ifeq 119
118: iconst_1
goto 120
StackMap locals:
StackMap stack:
119: iconst_0
StackMap locals:
StackMap stack: int
120: istore 40
start local 40 121: iload 40
ifeq 127
122: aload 32
iload 26
iconst_0
123: iload 16
iconst_1
124: iconst_0
iconst_0
125: aconst_null
126: invokevirtual java.awt.image.WritableRaster.createWritableChild:(IIIIII[I)Ljava/awt/image/WritableRaster;
astore 32
127: StackMap locals: int
StackMap stack:
iconst_0
istore 41
start local 41 128: goto 236
129: StackMap locals: int
StackMap stack:
aload 0
iload 6
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.updateImageProgress:(I)V
130: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.abortRequested:()Z
ifeq 132
131: return
132: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
invokevirtual java.io.DataInputStream.read:()I
istore 42
start local 42 133: aload 31
astore 43
start local 43 134: aload 30
astore 31
135: aload 43
astore 30
136: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
aload 30
iconst_0
iload 23
invokevirtual java.io.DataInputStream.readFully:([BII)V
end local 43 137: goto 140
StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int int int java.awt.image.WritableRaster int int int int int[] int int int int int int int int int int int int int int byte[] short[] byte[] byte[] java.awt.image.WritableRaster int[] java.awt.image.DataBuffer int int int[] int int[][] int int int
StackMap stack: java.util.zip.ZipException
138: astore 43
start local 43 139: aload 43
athrow
end local 43 140: StackMap locals:
StackMap stack:
iload 42
tableswitch { // 0 - 4
0: 141
1: 142
2: 144
3: 146
4: 150
default: 154
}
141: StackMap locals:
StackMap stack:
goto 157
142: StackMap locals:
StackMap stack:
aload 30
iconst_0
iload 23
iload 21
invokestatic com.sun.imageio.plugins.png.PNGImageReader.decodeSubFilter:([BIII)V
143: goto 157
144: StackMap locals:
StackMap stack:
aload 30
iconst_0
aload 31
iconst_0
iload 23
invokestatic com.sun.imageio.plugins.png.PNGImageReader.decodeUpFilter:([BI[BII)V
145: goto 157
146: StackMap locals:
StackMap stack:
aload 30
iconst_0
aload 31
iconst_0
iload 23
147: iload 21
148: invokestatic com.sun.imageio.plugins.png.PNGImageReader.decodeAverageFilter:([BI[BIII)V
149: goto 157
150: StackMap locals:
StackMap stack:
aload 30
iconst_0
aload 31
iconst_0
iload 23
151: iload 21
152: invokestatic com.sun.imageio.plugins.png.PNGImageReader.decodePaethFilter:([BI[BIII)V
153: goto 157
154: StackMap locals:
StackMap stack:
new javax.imageio.IIOException
dup
new java.lang.StringBuilder
dup
ldc "Unknown row filter type (= "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
155: iload 42
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")!"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
156: invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
157: StackMap locals:
StackMap stack:
iload 19
bipush 16
if_icmpge 160
158: aload 30
iconst_0
aload 28
iconst_0
iload 23
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
159: goto 169
160: StackMap locals:
StackMap stack:
iconst_0
istore 43
start local 43 161: iconst_0
istore 44
start local 44 162: goto 168
163: StackMap locals: int int
StackMap stack:
aload 29
iload 44
164: aload 30
iload 43
baload
bipush 8
ishl
aload 30
iload 43
iconst_1
iadd
baload
sipush 255
iand
ior
i2s
165: sastore
166: iinc 43 2
167: iinc 44 1
StackMap locals:
StackMap stack:
168: iload 44
iload 24
if_icmplt 163
end local 44 end local 43 169: StackMap locals:
StackMap stack:
iload 41
iload 5
imul
iload 3
iadd
istore 43
start local 43 170: iload 43
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
getfield java.awt.Rectangle.y:I
if_icmplt 235
171: iload 43
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
getfield java.awt.Rectangle.y:I
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
getfield java.awt.Rectangle.height:I
iadd
if_icmpge 235
172: iload 43
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
getfield java.awt.Rectangle.y:I
isub
173: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceYSubsampling:I
174: irem
ifne 235
175: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationOffset:Ljava/awt/Point;
getfield java.awt.Point.y:I
176: iload 43
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
getfield java.awt.Rectangle.y:I
isub
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceYSubsampling:I
idiv
177: iadd
istore 44
start local 44 178: iload 44
iload 11
if_icmpge 180
179: goto 235
180: StackMap locals: int int
StackMap stack:
iload 44
iload 12
if_icmple 182
181: goto 237
182: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
invokevirtual java.awt.image.BufferedImage.getSampleModel:()Ljava/awt/image/SampleModel;
invokevirtual java.awt.image.SampleModel.getNumBands:()I
iload 20
iconst_1
iadd
if_icmpne 185
183: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
invokevirtual com.sun.imageio.plugins.png.PNGMetadata.hasTransparentColor:()Z
ifeq 185
184: iconst_1
goto 186
StackMap locals:
StackMap stack:
185: iconst_0
StackMap locals:
StackMap stack: int
186: istore 45
start local 45 187: iload 40
ifeq 191
188: iload 45
ifne 191
189: aload 8
iload 14
iload 44
aload 32
invokevirtual java.awt.image.WritableRaster.setRect:(IILjava/awt/image/Raster;)V
190: goto 229
191: StackMap locals: int
StackMap stack:
iload 26
istore 46
start local 46 192: iload 20
iconst_1
iadd
newarray 10
astore 47
start local 47 193: iload 19
bipush 16
if_icmpge 194
sipush 255
goto 195
StackMap locals: int int[]
StackMap stack:
194: ldc 65535
StackMap locals:
StackMap stack: int
195: istore 48
start local 48 196: iload 14
istore 49
start local 49 197: goto 227
198: StackMap locals: int int
StackMap stack:
aload 32
iload 46
iconst_0
aload 33
invokevirtual java.awt.image.WritableRaster.getPixel:(II[I)[I
pop
199: iload 36
ifeq 205
200: iconst_0
istore 50
start local 50 201: goto 204
202: StackMap locals: int
StackMap stack:
aload 33
iload 50
aload 39
iload 50
aaload
aload 33
iload 50
iaload
iaload
iastore
203: iinc 50 1
StackMap locals:
StackMap stack:
204: iload 50
iload 38
if_icmplt 202
end local 50 205: StackMap locals:
StackMap stack:
iload 45
ifeq 224
206: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_colorType:I
iconst_2
if_icmpne 217
207: aload 47
iconst_0
aload 33
iconst_0
iaload
iastore
208: aload 47
iconst_1
aload 33
iconst_1
iaload
iastore
209: aload 47
iconst_2
aload 33
iconst_2
iaload
iastore
210: aload 33
iconst_0
iaload
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_red:I
if_icmpne 215
211: aload 33
iconst_1
iaload
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_green:I
if_icmpne 215
212: aload 33
iconst_2
iaload
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_blue:I
if_icmpne 215
213: aload 47
iconst_3
iconst_0
iastore
214: goto 222
215: StackMap locals:
StackMap stack:
aload 47
iconst_3
iload 48
iastore
216: goto 222
217: StackMap locals:
StackMap stack:
aload 47
iconst_0
aload 33
iconst_0
iaload
iastore
218: aload 33
iconst_0
iaload
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_gray:I
if_icmpne 221
219: aload 47
iconst_1
iconst_0
iastore
220: goto 222
221: StackMap locals:
StackMap stack:
aload 47
iconst_1
iload 48
iastore
222: StackMap locals:
StackMap stack:
aload 8
iload 49
iload 44
aload 47
invokevirtual java.awt.image.WritableRaster.setPixel:(II[I)V
223: goto 225
224: StackMap locals:
StackMap stack:
aload 8
iload 49
iload 44
aload 33
invokevirtual java.awt.image.WritableRaster.setPixel:(II[I)V
225: StackMap locals:
StackMap stack:
iload 46
iload 27
iadd
istore 46
226: iload 49
iload 17
iadd
istore 49
227: StackMap locals:
StackMap stack:
iload 49
iload 14
iload 16
iadd
228: if_icmplt 198
end local 49 end local 48 end local 47 end local 46 229: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int int int java.awt.image.WritableRaster int int int int int[] int int int int int int int int int int int int int int byte[] short[] byte[] byte[] java.awt.image.WritableRaster int[] java.awt.image.DataBuffer int int int[] int int[][] int int int int int int
StackMap stack:
aload 0
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
230: iload 14
iload 44
231: iload 16
iconst_1
232: iload 17
iload 18
233: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
234: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
end local 45 end local 44 end local 43 end local 42 235: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int int int java.awt.image.WritableRaster int int int int int[] int int int int int int int int int int int int int int byte[] short[] byte[] byte[] java.awt.image.WritableRaster int[] java.awt.image.DataBuffer int int int[] int int[][] int int
StackMap stack:
iinc 41 1
StackMap locals:
StackMap stack:
236: iload 41
iload 7
if_icmplt 129
end local 41 237: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processPassComplete:(Ljava/awt/image/BufferedImage;)V
238: return
end local 40 end local 39 end local 38 end local 37 end local 36 end local 35 end local 34 end local 33 end local 32 end local 31 end local 30 end local 29 end local 28 end local 27 end local 26 end local 25 end local 24 end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 239 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 239 1 passNum I
0 239 2 xStart I
0 239 3 yStart I
0 239 4 xStep I
0 239 5 yStep I
0 239 6 passWidth I
0 239 7 passHeight I
3 239 8 imRas Ljava/awt/image/WritableRaster;
4 239 9 dstMinX I
5 239 10 dstMaxX I
6 239 11 dstMinY I
7 239 12 dstMaxY I
18 239 13 vals [I
19 239 14 updateMinX I
20 239 15 updateMinY I
21 239 16 updateWidth I
22 239 17 updateXStep I
23 239 18 updateYStep I
24 239 19 bitDepth I
25 239 20 inputBands I
28 239 21 bytesPerPixel I
30 239 22 bitsPerRow I
31 239 23 bytesPerRow I
34 239 24 eltsPerRow I
36 43 25 srcY I
48 239 25 sourceX I
49 239 26 srcX I
50 239 27 srcXStep I
51 239 28 byteData [B
52 239 29 shortData [S
53 239 30 curr [B
54 239 31 prior [B
58 239 32 passRow Ljava/awt/image/WritableRaster;
59 239 33 ps [I
60 239 34 dataBuffer Ljava/awt/image/DataBuffer;
61 239 35 type I
87 239 36 adjustBitDepths Z
88 239 37 outputSampleSize [I
89 239 38 numBands I
90 96 39 b I
97 239 39 scale [[I
99 114 40 maxInSample I
100 114 41 halfMaxInSample I
102 114 42 b I
104 112 43 maxOutSample I
106 112 44 s I
121 239 40 useSetRect Z
128 237 41 srcY I
133 235 42 filter I
134 137 43 tmp [B
139 140 43 ze Ljava/util/zip/ZipException;
161 169 43 idx I
162 169 44 j I
170 235 43 sourceY I
178 235 44 dstY I
187 235 45 tRNSTransparentPixelPresent Z
192 229 46 newSrcX I
193 229 47 temp [I
196 229 48 opaque I
197 229 49 dstX I
201 205 50 b I
Exception table:
from to target type
133 137 138 Class java.util.zip.ZipException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
passNum
xStart
yStart
xStep
yStep
passWidth
passHeight
private void decodeImage();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=10, args_size=1
start local 0 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_width:I
istore 1
start local 1 1: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_height:I
istore 2
start local 2 2: aload 0
iconst_0
putfield com.sun.imageio.plugins.png.PNGImageReader.pixelsDone:I
3: aload 0
iload 1
iload 2
imul
putfield com.sun.imageio.plugins.png.PNGImageReader.totalPixels:I
4: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_interlaceMethod:I
ifne 7
5: aload 0
iconst_0
iconst_0
iconst_0
iconst_1
iconst_1
iload 1
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.decodePass:(IIIIIII)V
6: goto 32
7: StackMap locals: int int
StackMap stack:
iconst_0
istore 3
start local 3 8: goto 31
9: StackMap locals: int
StackMap stack:
getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7XOffset:[I
iload 3
iaload
istore 4
start local 4 10: getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7YOffset:[I
iload 3
iaload
istore 5
start local 5 11: getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7XSubsampling:[I
iload 3
iaload
istore 6
start local 6 12: getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7YSubsampling:[I
iload 3
iaload
istore 7
start local 7 13: getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7XSubsampling:[I
iload 3
iconst_1
iadd
iaload
iconst_1
isub
istore 8
start local 8 14: getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7YSubsampling:[I
iload 3
iconst_1
iadd
iaload
iconst_1
isub
istore 9
start local 9 15: iload 3
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceMinProgressivePass:I
if_icmplt 25
16: aload 0
iload 3
17: iload 4
18: iload 5
19: iload 6
20: iload 7
21: iload 1
iload 8
iadd
iload 6
idiv
22: iload 2
iload 9
iadd
iload 7
idiv
23: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.decodePass:(IIIIIII)V
24: goto 28
25: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int int int int int int int
StackMap stack:
aload 0
iload 1
iload 8
iadd
iload 6
idiv
26: iload 2
iload 9
iadd
iload 7
idiv
27: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.skipPass:(II)V
28: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.abortRequested:()Z
ifeq 30
29: return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 30: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
31: iload 3
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceMaxProgressivePass:I
if_icmple 9
end local 3 32: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
1 33 1 width I
2 33 2 height I
8 32 3 i I
10 30 4 XOffset I
11 30 5 YOffset I
12 30 6 XSubsampling I
13 30 7 YSubsampling I
14 30 8 xbump I
15 30 9 ybump I
Exceptions:
throws java.io.IOException, javax.imageio.IIOException
private void readImage(javax.imageio.ImageReadParam);
descriptor: (Ljavax/imageio/ImageReadParam;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=10, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readMetadata:()V
1: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_width:I
istore 2
start local 2 2: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_height:I
istore 3
start local 3 3: aload 0
iconst_1
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceXSubsampling:I
4: aload 0
iconst_1
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceYSubsampling:I
5: aload 0
iconst_0
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceMinProgressivePass:I
6: aload 0
bipush 6
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceMaxProgressivePass:I
7: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceBands:[I
8: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
9: aload 0
new java.awt.Point
dup
iconst_0
iconst_0
invokespecial java.awt.Point.<init>:(II)V
putfield com.sun.imageio.plugins.png.PNGImageReader.destinationOffset:Ljava/awt/Point;
10: aload 1
ifnull 22
11: aload 0
aload 1
invokevirtual javax.imageio.ImageReadParam.getSourceXSubsampling:()I
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceXSubsampling:I
12: aload 0
aload 1
invokevirtual javax.imageio.ImageReadParam.getSourceYSubsampling:()I
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceYSubsampling:I
13: aload 0
14: aload 1
invokevirtual javax.imageio.ImageReadParam.getSourceMinProgressivePass:()I
iconst_0
invokestatic java.lang.Math.max:(II)I
15: putfield com.sun.imageio.plugins.png.PNGImageReader.sourceMinProgressivePass:I
16: aload 0
17: aload 1
invokevirtual javax.imageio.ImageReadParam.getSourceMaxProgressivePass:()I
bipush 6
invokestatic java.lang.Math.min:(II)I
18: putfield com.sun.imageio.plugins.png.PNGImageReader.sourceMaxProgressivePass:I
19: aload 0
aload 1
invokevirtual javax.imageio.ImageReadParam.getSourceBands:()[I
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceBands:[I
20: aload 0
aload 1
invokevirtual javax.imageio.ImageReadParam.getDestinationBands:()[I
putfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
21: aload 0
aload 1
invokevirtual javax.imageio.ImageReadParam.getDestinationOffset:()Ljava/awt/Point;
putfield com.sun.imageio.plugins.png.PNGImageReader.destinationOffset:Ljava/awt/Point;
22: StackMap locals: int int
StackMap stack:
aconst_null
astore 4
start local 4 23: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.imageStartPosition:J
invokeinterface javax.imageio.stream.ImageInputStream.seek:(J)V
24: new com.sun.imageio.plugins.png.PNGImageDataEnumeration
dup
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokespecial com.sun.imageio.plugins.png.PNGImageDataEnumeration.<init>:(Ljavax/imageio/stream/ImageInputStream;)V
astore 5
start local 5 25: new java.io.SequenceInputStream
dup
aload 5
invokespecial java.io.SequenceInputStream.<init>:(Ljava/util/Enumeration;)V
astore 6
start local 6 26: new java.util.zip.Inflater
dup
invokespecial java.util.zip.Inflater.<init>:()V
astore 4
27: new java.util.zip.InflaterInputStream
dup
aload 6
aload 4
invokespecial java.util.zip.InflaterInputStream.<init>:(Ljava/io/InputStream;Ljava/util/zip/Inflater;)V
astore 6
28: new java.io.BufferedInputStream
dup
aload 6
invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
astore 6
29: aload 0
new java.io.DataInputStream
dup
aload 6
invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
putfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
30: aload 0
aload 1
31: aload 0
iconst_0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.getImageTypes:(I)Ljava/util/Iterator;
32: iload 2
33: iload 3
34: invokestatic com.sun.imageio.plugins.png.PNGImageReader.getDestination:(Ljavax/imageio/ImageReadParam;Ljava/util/Iterator;II)Ljava/awt/image/BufferedImage;
putfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
35: new java.awt.Rectangle
dup
iconst_0
iconst_0
iconst_0
iconst_0
invokespecial java.awt.Rectangle.<init>:(IIII)V
astore 7
start local 7 36: aload 0
new java.awt.Rectangle
dup
iconst_0
iconst_0
iconst_0
iconst_0
invokespecial java.awt.Rectangle.<init>:(IIII)V
putfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
37: aload 1
iload 2
iload 3
38: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
39: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
aload 7
40: invokestatic com.sun.imageio.plugins.png.PNGImageReader.computeRegions:(Ljavax/imageio/ImageReadParam;IILjava/awt/image/BufferedImage;Ljava/awt/Rectangle;Ljava/awt/Rectangle;)V
41: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationOffset:Ljava/awt/Point;
aload 7
invokevirtual java.awt.Rectangle.getLocation:()Ljava/awt/Point;
invokevirtual java.awt.Point.setLocation:(Ljava/awt/Point;)V
42: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
istore 8
start local 8 43: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
invokevirtual java.awt.image.BufferedImage.getSampleModel:()Ljava/awt/image/SampleModel;
invokevirtual java.awt.image.SampleModel.getNumBands:()I
44: getstatic com.sun.imageio.plugins.png.PNGImageReader.inputBandsForColorType:[I
iload 8
iaload
iconst_1
iadd
45: if_icmpne 52
46: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
invokevirtual com.sun.imageio.plugins.png.PNGMetadata.hasTransparentColor:()Z
ifeq 52
47: aload 1
48: getstatic com.sun.imageio.plugins.png.PNGImageReader.inputBandsForColorType:[I
iload 8
iaload
iconst_1
iadd
49: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
invokevirtual java.awt.image.BufferedImage.getSampleModel:()Ljava/awt/image/SampleModel;
invokevirtual java.awt.image.SampleModel.getNumBands:()I
50: invokestatic com.sun.imageio.plugins.png.PNGImageReader.checkReadParamBandSettings:(Ljavax/imageio/ImageReadParam;II)V
51: goto 56
52: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader javax.imageio.ImageReadParam int int java.util.zip.Inflater java.util.Enumeration java.io.InputStream java.awt.Rectangle int
StackMap stack:
aload 1
53: getstatic com.sun.imageio.plugins.png.PNGImageReader.inputBandsForColorType:[I
iload 8
iaload
54: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
invokevirtual java.awt.image.BufferedImage.getSampleModel:()Ljava/awt/image/SampleModel;
invokevirtual java.awt.image.SampleModel.getNumBands:()I
55: invokestatic com.sun.imageio.plugins.png.PNGImageReader.checkReadParamBandSettings:(Ljavax/imageio/ImageReadParam;II)V
56: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.clearAbortRequest:()V
57: aload 0
iconst_0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processImageStarted:(I)V
58: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.abortRequested:()Z
ifeq 61
59: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processReadAborted:()V
60: goto 73
61: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.decodeImage:()V
62: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.abortRequested:()Z
ifeq 65
63: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processReadAborted:()V
64: goto 73
65: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processImageComplete:()V
end local 8 end local 7 end local 6 end local 5 66: goto 73
StackMap locals: com.sun.imageio.plugins.png.PNGImageReader javax.imageio.ImageReadParam int int java.util.zip.Inflater
StackMap stack: java.io.IOException
67: astore 5
start local 5 68: new javax.imageio.IIOException
dup
ldc "Error reading PNG image data"
aload 5
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 69: StackMap locals:
StackMap stack: java.lang.Throwable
astore 9
70: aload 4
ifnull 72
71: aload 4
invokevirtual java.util.zip.Inflater.end:()V
72: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader javax.imageio.ImageReadParam int int java.util.zip.Inflater top top top top java.lang.Throwable
StackMap stack:
aload 9
athrow
73: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader javax.imageio.ImageReadParam int int java.util.zip.Inflater
StackMap stack:
aload 4
ifnull 75
74: aload 4
invokevirtual java.util.zip.Inflater.end:()V
75: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 76 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 76 1 param Ljavax/imageio/ImageReadParam;
2 76 2 width I
3 76 3 height I
23 76 4 inf Ljava/util/zip/Inflater;
25 66 5 e Ljava/util/Enumeration<Ljava/io/InputStream;>;
26 66 6 is Ljava/io/InputStream;
36 66 7 destRegion Ljava/awt/Rectangle;
43 66 8 colorType I
68 69 5 e Ljava/io/IOException;
Exception table:
from to target type
23 66 67 Class java.io.IOException
23 69 69 any
Exceptions:
throws javax.imageio.IIOException
MethodParameters:
Name Flags
param
public int getNumImages(boolean);
descriptor: (Z)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
ifnonnull 2
1: new java.lang.IllegalStateException
dup
ldc "No input source set!"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.seekForwardOnly:Z
ifeq 6
iload 1
ifeq 6
3: new java.lang.IllegalStateException
dup
4: ldc "seekForwardOnly and allowSearch can't both be true!"
5: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 7 1 allowSearch Z
Exceptions:
throws javax.imageio.IIOException
MethodParameters:
Name Flags
allowSearch
public int getWidth(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 2
1: new java.lang.IndexOutOfBoundsException
dup
ldc "imageIndex != 0!"
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readHeader:()V
3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_width:I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 4 1 imageIndex I
Exceptions:
throws javax.imageio.IIOException
MethodParameters:
Name Flags
imageIndex
public int getHeight(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 2
1: new java.lang.IndexOutOfBoundsException
dup
ldc "imageIndex != 0!"
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readHeader:()V
3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_height:I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 4 1 imageIndex I
Exceptions:
throws javax.imageio.IIOException
MethodParameters:
Name Flags
imageIndex
public java.util.Iterator<javax.imageio.ImageTypeSpecifier> getImageTypes(int);
descriptor: (I)Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=14, args_size=2
start local 0 start local 1 0: iload 1
ifeq 2
1: new java.lang.IndexOutOfBoundsException
dup
ldc "imageIndex != 0!"
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readHeader:()V
3: new java.util.ArrayList
dup
iconst_1
invokespecial java.util.ArrayList.<init>:(I)V
4: astore 2
start local 2 5: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_bitDepth:I
istore 6
start local 6 6: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.IHDR_colorType:I
istore 7
start local 7 7: iload 6
bipush 8
if_icmpgt 10
8: iconst_0
istore 8
start local 8 9: goto 11
end local 8 10: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int java.util.ArrayList top top top int int
StackMap stack:
iconst_1
istore 8
start local 8 11: StackMap locals: int
StackMap stack:
iload 7
tableswitch { // 0 - 6
0: 12
1: 133
2: 29
3: 68
4: 102
5: 133
6: 113
default: 133
}
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readMetadata:()V
13: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
invokevirtual com.sun.imageio.plugins.png.PNGMetadata.hasTransparentColor:()Z
ifeq 24
14: sipush 1003
invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
astore 4
start local 4 15: iconst_2
newarray 10
astore 5
start local 5 16: aload 5
iconst_0
iconst_0
iastore
17: aload 5
iconst_1
iconst_1
iastore
18: aload 2
aload 4
19: aload 5
20: iload 8
21: iconst_1
22: iconst_0
23: invokestatic javax.imageio.ImageTypeSpecifier.createInterleaved:(Ljava/awt/color/ColorSpace;[IIZZ)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 4 24: StackMap locals:
StackMap stack:
aload 2
iload 6
25: iload 8
26: iconst_0
27: invokestatic javax.imageio.ImageTypeSpecifier.createGrayscale:(IIZ)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
28: goto 133
29: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readMetadata:()V
30: iload 6
bipush 8
if_icmpne 44
31: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
invokevirtual com.sun.imageio.plugins.png.PNGMetadata.hasTransparentColor:()Z
ifeq 35
32: aload 2
33: bipush 6
34: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
35: StackMap locals:
StackMap stack:
aload 2
36: iconst_5
37: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
38: aload 2
39: iconst_1
40: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
41: aload 2
42: iconst_4
43: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
44: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
invokevirtual com.sun.imageio.plugins.png.PNGMetadata.hasTransparentColor:()Z
ifeq 56
45: sipush 1000
invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
astore 3
start local 3 46: iconst_4
newarray 10
astore 5
start local 5 47: aload 5
iconst_0
iconst_0
iastore
48: aload 5
iconst_1
iconst_1
iastore
49: aload 5
iconst_2
iconst_2
iastore
50: aload 5
iconst_3
iconst_3
iastore
51: aload 2
52: aload 3
aload 5
53: iload 8
iconst_1
iconst_0
54: invokestatic javax.imageio.ImageTypeSpecifier.createInterleaved:(Ljava/awt/color/ColorSpace;[IIZZ)Ljavax/imageio/ImageTypeSpecifier;
55: invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 3 56: StackMap locals:
StackMap stack:
sipush 1000
invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
astore 3
start local 3 57: iconst_3
newarray 10
astore 5
start local 5 58: aload 5
iconst_0
iconst_0
iastore
59: aload 5
iconst_1
iconst_1
iastore
60: aload 5
iconst_2
iconst_2
iastore
61: aload 2
aload 3
62: aload 5
63: iload 8
64: iconst_0
65: iconst_0
66: invokestatic javax.imageio.ImageTypeSpecifier.createInterleaved:(Ljava/awt/color/ColorSpace;[IIZZ)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
67: goto 133
end local 5 end local 3 68: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readMetadata:()V
69: iconst_1
iload 6
ishl
istore 9
start local 9 70: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_red:[B
astore 10
start local 10 71: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_green:[B
astore 11
start local 11 72: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_blue:[B
astore 12
start local 12 73: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_red:[B
arraylength
iload 9
if_icmpge 86
74: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_red:[B
iload 9
invokestatic java.util.Arrays.copyOf:([BI)[B
astore 10
75: aload 10
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_red:[B
arraylength
iload 9
76: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_red:[B
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_red:[B
arraylength
iconst_1
isub
baload
77: invokestatic java.util.Arrays.fill:([BIIB)V
78: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_green:[B
iload 9
invokestatic java.util.Arrays.copyOf:([BI)[B
astore 11
79: aload 11
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_green:[B
arraylength
iload 9
80: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_green:[B
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_green:[B
arraylength
iconst_1
isub
baload
81: invokestatic java.util.Arrays.fill:([BIIB)V
82: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_blue:[B
iload 9
invokestatic java.util.Arrays.copyOf:([BI)[B
astore 12
83: aload 12
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_blue:[B
arraylength
iload 9
84: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_blue:[B
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.PLTE_blue:[B
arraylength
iconst_1
isub
baload
85: invokestatic java.util.Arrays.fill:([BIIB)V
86: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int java.util.ArrayList top top top int int int int byte[] byte[] byte[]
StackMap stack:
aconst_null
astore 13
start local 13 87: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_present:Z
ifeq 96
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_alpha:[B
ifnull 96
88: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_alpha:[B
arraylength
aload 10
arraylength
if_icmpne 91
89: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_alpha:[B
astore 13
90: goto 96
91: StackMap locals: byte[]
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_alpha:[B
aload 10
arraylength
invokestatic java.util.Arrays.copyOf:([BI)[B
astore 13
92: aload 13
93: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
getfield com.sun.imageio.plugins.png.PNGMetadata.tRNS_alpha:[B
arraylength
94: aload 10
arraylength
iconst_m1
95: invokestatic java.util.Arrays.fill:([BIIB)V
96: StackMap locals:
StackMap stack:
aload 2
aload 10
aload 11
97: aload 12
aload 13
98: iload 6
99: iconst_0
100: invokestatic javax.imageio.ImageTypeSpecifier.createIndexed:([B[B[B[BII)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
101: goto 133
end local 13 end local 12 end local 11 end local 10 end local 9 102: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int java.util.ArrayList top top top int int int
StackMap stack:
sipush 1003
invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
astore 4
start local 4 103: iconst_2
newarray 10
astore 5
start local 5 104: aload 5
iconst_0
iconst_0
iastore
105: aload 5
iconst_1
iconst_1
iastore
106: aload 2
aload 4
107: aload 5
108: iload 8
109: iconst_1
110: iconst_0
111: invokestatic javax.imageio.ImageTypeSpecifier.createInterleaved:(Ljava/awt/color/ColorSpace;[IIZZ)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
112: goto 133
end local 5 end local 4 113: StackMap locals:
StackMap stack:
iload 6
bipush 8
if_icmpne 120
114: aload 2
115: bipush 6
116: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
117: aload 2
118: iconst_2
119: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
120: StackMap locals:
StackMap stack:
sipush 1000
invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
astore 3
start local 3 121: iconst_4
newarray 10
astore 5
start local 5 122: aload 5
iconst_0
iconst_0
iastore
123: aload 5
iconst_1
iconst_1
iastore
124: aload 5
iconst_2
iconst_2
iastore
125: aload 5
iconst_3
iconst_3
iastore
126: aload 2
aload 3
127: aload 5
128: iload 8
129: iconst_1
130: iconst_0
131: invokestatic javax.imageio.ImageTypeSpecifier.createInterleaved:(Ljava/awt/color/ColorSpace;[IIZZ)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
132: goto 133
end local 5 end local 3 133: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
areturn
end local 8 end local 7 end local 6 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 134 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 134 1 imageIndex I
5 134 2 l Ljava/util/ArrayList<Ljavax/imageio/ImageTypeSpecifier;>;
46 56 3 rgb Ljava/awt/color/ColorSpace;
57 68 3 rgb Ljava/awt/color/ColorSpace;
121 133 3 rgb Ljava/awt/color/ColorSpace;
15 24 4 gray Ljava/awt/color/ColorSpace;
103 113 4 gray Ljava/awt/color/ColorSpace;
16 24 5 bandOffsets [I
47 56 5 bandOffsets [I
58 68 5 bandOffsets [I
104 113 5 bandOffsets [I
122 133 5 bandOffsets [I
6 134 6 bitDepth I
7 134 7 colorType I
9 10 8 dataType I
11 134 8 dataType I
70 102 9 plength I
71 102 10 red [B
72 102 11 green [B
73 102 12 blue [B
87 102 13 alpha [B
Exceptions:
throws javax.imageio.IIOException
Signature: (I)Ljava/util/Iterator<Ljavax/imageio/ImageTypeSpecifier;>;
MethodParameters:
Name Flags
imageIndex
public javax.imageio.ImageTypeSpecifier getRawImageType(int);
descriptor: (I)Ljavax/imageio/ImageTypeSpecifier;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.getImageTypes:(I)Ljava/util/Iterator;
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: StackMap locals: java.util.Iterator javax.imageio.ImageTypeSpecifier
StackMap stack:
aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.imageio.ImageTypeSpecifier
astore 3
3: aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
4: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 5 1 imageIndex I
1 5 2 types Ljava/util/Iterator<Ljavax/imageio/ImageTypeSpecifier;>;
2 5 3 raw Ljavax/imageio/ImageTypeSpecifier;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
imageIndex
public javax.imageio.ImageReadParam getDefaultReadParam();
descriptor: ()Ljavax/imageio/ImageReadParam;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new javax.imageio.ImageReadParam
dup
invokespecial javax.imageio.ImageReadParam.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
public javax.imageio.metadata.IIOMetadata getStreamMetadata();
descriptor: ()Ljavax/imageio/metadata/IIOMetadata;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
Exceptions:
throws javax.imageio.IIOException
public javax.imageio.metadata.IIOMetadata getImageMetadata(int);
descriptor: (I)Ljavax/imageio/metadata/IIOMetadata;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 2
1: new java.lang.IndexOutOfBoundsException
dup
ldc "imageIndex != 0!"
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readMetadata:()V
3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 4 1 imageIndex I
Exceptions:
throws javax.imageio.IIOException
MethodParameters:
Name Flags
imageIndex
public java.awt.image.BufferedImage read(int, javax.imageio.ImageReadParam);
descriptor: (ILjavax/imageio/ImageReadParam;)Ljava/awt/image/BufferedImage;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 1
ifeq 2
1: new java.lang.IndexOutOfBoundsException
dup
ldc "imageIndex != 0!"
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readImage:(Ljavax/imageio/ImageReadParam;)V
3: goto 8
4: StackMap locals:
StackMap stack: java.lang.Exception
astore 3
start local 3 5: aload 3
athrow
end local 3 6: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
start local 3 7: new javax.imageio.IIOException
dup
ldc "Caught exception during read: "
aload 3
invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 9 1 imageIndex I
0 9 2 param Ljavax/imageio/ImageReadParam;
5 6 3 e Ljava/lang/Exception;
7 8 3 e Ljava/lang/Throwable;
Exception table:
from to target type
2 3 4 Class java.io.IOException
2 3 4 Class java.lang.IllegalStateException
2 3 4 Class java.lang.IllegalArgumentException
2 3 6 Class java.lang.Throwable
Exceptions:
throws javax.imageio.IIOException
MethodParameters:
Name Flags
imageIndex
param
public void reset();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial javax.imageio.ImageReader.reset:()V
1: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.resetStreamSettings:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
private void resetStreamSettings();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield com.sun.imageio.plugins.png.PNGImageReader.gotHeader:Z
1: aload 0
iconst_0
putfield com.sun.imageio.plugins.png.PNGImageReader.gotMetadata:Z
2: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
3: aload 0
aconst_null
putfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
4: aload 0
ldc -1
putfield com.sun.imageio.plugins.png.PNGImageReader.imageStartPosition:J
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
}
SourceFile: "PNGImageReader.java"