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
ifne 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
ifne 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=4, 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: 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;
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.iCCP_compressionMethod:I
3: iload 1
aload 2
invokevirtual java.lang.String.length:()I
isub
iconst_2
isub
newarray 8
4: astore 3
start local 3 5: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 3
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
6: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
aload 3
putfield com.sun.imageio.plugins.png.PNGMetadata.iCCP_compressedProfile:[B
7: 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
8: return
end local 3 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 chunkLength I
1 9 2 keyword Ljava/lang/String;
5 9 3 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=14, 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
newarray 8
astore 13
start local 13 18: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 13
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
19: iload 5
iconst_1
if_icmpne 22
20: new java.lang.String
dup
aload 13
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 21: goto 23
end local 12 22: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int long java.lang.String int int java.lang.String long int java.lang.String top byte[]
StackMap stack:
new java.lang.String
dup
aload 13
ldc "UTF8"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
astore 12
start local 12 23: 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 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
24: return
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 25 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 25 1 chunkLength I
1 25 2 chunkStart J
2 25 4 keyword Ljava/lang/String;
4 25 5 compressionFlag I
8 25 6 compressionMethod I
10 25 7 languageTag Ljava/lang/String;
12 25 8 pos J
13 25 10 maxLen I
15 25 11 translatedKeyword Ljava/lang/String;
21 22 12 text Ljava/lang/String;
23 25 12 text Ljava/lang/String;
18 25 13 b [B
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=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;
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
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
isub
istore 1
2: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
istore 2
start local 2 3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 2
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_sampleDepth:I
4: iload 1
iconst_4
iload 2
bipush 8
idiv
imul
iconst_2
iadd
idiv
istore 3
start local 3 5: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 3
newarray 10
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_red:[I
6: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 3
newarray 10
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_green:[I
7: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 3
newarray 10
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_blue:[I
8: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 3
newarray 10
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_alpha:[I
9: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.metadata:Lcom/sun/imageio/plugins/png/PNGMetadata;
iload 3
newarray 10
putfield com.sun.imageio.plugins.png.PNGMetadata.sPLT_frequency:[I
10: iload 2
bipush 8
if_icmpne 21
11: iconst_0
istore 4
start local 4 12: goto 19
13: 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 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
iastore
14: 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 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
iastore
15: 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 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
iastore
16: 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 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedByte:()I
iastore
17: 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 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
18: iinc 4 1
StackMap locals:
StackMap stack:
19: iload 4
iload 3
if_icmplt 13
end local 4 20: goto 33
StackMap locals:
StackMap stack:
21: iload 2
bipush 16
if_icmpne 32
22: iconst_0
istore 4
start local 4 23: goto 30
24: 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 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
25: 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 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
26: 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 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
27: 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 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
28: 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 4
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
iastore
29: iinc 4 1
StackMap locals:
StackMap stack:
30: iload 4
iload 3
if_icmplt 24
end local 4 31: goto 33
32: 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
33: 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
34: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 35 1 chunkLength I
3 35 2 sampleDepth I
5 35 3 numEntries I
12 20 4 i I
23 31 4 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=4, 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: 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
2: iload 1
aload 2
invokevirtual java.lang.String.length:()I
isub
iconst_1
isub
newarray 8
astore 3
start local 3 3: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 3
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
4: 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 3
ldc "ISO-8859-1"
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 6 1 chunkLength I
1 6 2 keyword Ljava/lang/String;
3 6 3 b [B
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
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=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: 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
2: 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 3: 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;
new java.lang.Integer
dup
iload 3
invokespecial java.lang.Integer.<init>:(I)V
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
4: iload 1
aload 2
invokevirtual java.lang.String.length:()I
isub
iconst_2
isub
newarray 8
astore 4
start local 4 5: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 4
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
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_text:Ljava/util/ArrayList;
new java.lang.String
dup
aload 4
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
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 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 8 1 chunkLength I
1 8 2 keyword Ljava/lang/String;
3 8 3 method I
5 8 4 b [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
chunkLength
private void readMetadata();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, 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 17
iload 1
iconst_3
if_icmpeq 17
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: 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 7: iload 3
ldc 1229209940
if_icmpne 11
8: 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
9: 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
10: goto 15
11: StackMap locals: int int
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 12: goto 5
13: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int
StackMap stack: java.io.IOException
astore 2
start local 2 14: 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 15: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.imageio.plugins.png.PNGImageReader.gotMetadata:Z
16: return
17: 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 18: 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
lookupswitch { // 16
1229209940: 20
1347179589: 23
1649100612: 25
1665684045: 27
1732332865: 29
1749635924: 31
1766015824: 33
1767135348: 35
1883789683: 40
1933723988: 42
1934642260: 44
1934772034: 46
1950701684: 48
1950960965: 50
1951551059: 52
2052348020: 54
default: 59
}
20: StackMap locals: int int
StackMap stack:
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
21: 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
22: goto 78
23: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_PLTE_chunk:(I)V
24: goto 73
25: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_bKGD_chunk:()V
26: goto 73
27: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_cHRM_chunk:()V
28: goto 73
29: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_gAMA_chunk:()V
30: goto 73
31: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_hIST_chunk:(I)V
32: goto 73
33: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_iCCP_chunk:(I)V
34: goto 73
35: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.ignoreMetadata:Z
ifeq 38
36: 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
37: goto 73
38: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_iTXt_chunk:(I)V
39: goto 73
40: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_pHYs_chunk:()V
41: goto 73
42: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_sBIT_chunk:()V
43: goto 73
44: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_sPLT_chunk:(I)V
45: goto 73
46: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_sRGB_chunk:()V
47: goto 73
48: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_tEXt_chunk:(I)V
49: goto 73
50: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_tIME_chunk:()V
51: goto 73
52: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_tRNS_chunk:(I)V
53: goto 73
54: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.ignoreMetadata:Z
ifeq 57
55: 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
56: goto 73
57: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.parse_zTXt_chunk:(I)V
58: goto 73
59: StackMap locals:
StackMap stack:
iload 2
newarray 8
astore 4
start local 4 60: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.stream:Ljavax/imageio/stream/ImageInputStream;
aload 4
invokeinterface javax.imageio.stream.ImageInputStream.readFully:([B)V
61: new java.lang.StringBuilder
dup
iconst_4
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 5
start local 5 62: aload 5
iload 3
bipush 24
iushr
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
63: aload 5
iload 3
bipush 16
ishr
sipush 255
iand
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
64: aload 5
iload 3
bipush 8
ishr
sipush 255
iand
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
65: aload 5
iload 3
sipush 255
iand
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
66: iload 3
bipush 28
iushr
istore 6
start local 6 67: iload 6
ifne 71
68: aload 0
69: ldc "Encountered unknown chunk with critical bit set!"
70: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processWarningOccurred:(Ljava/lang/String;)V
71: 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 5
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
72: 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 4
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 6 end local 5 end local 4 73: 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
pop
74: 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
end local 3 end local 2 75: goto 17
76: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int
StackMap stack: java.io.IOException
astore 2
start local 2 77: 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 78: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.imageio.plugins.png.PNGImageReader.gotMetadata:Z
79: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 80 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
4 80 1 colorType I
6 12 2 chunkLength I
7 12 3 chunkType I
14 15 2 e Ljava/io/IOException;
18 75 2 chunkLength I
19 75 3 chunkType I
60 73 4 b [B
62 73 5 chunkName Ljava/lang/StringBuilder;
67 73 6 ancillaryBit I
77 78 2 e Ljava/io/IOException;
Exception table:
from to target type
5 13 13 Class java.io.IOException
17 76 76 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=6, 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
iload 1
imul
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
bipush 7
iadd
bipush 8
idiv
istore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 10
6: StackMap locals: int int int
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
iconst_1
iload 4
iadd
invokevirtual java.io.DataInputStream.skipBytes:(I)I
pop
7: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.abortRequested:()Z
ifeq 9
8: return
9: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
10: iload 5
iload 2
if_icmplt 6
end local 5 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 passWidth I
0 12 2 passHeight I
3 12 3 inputBands I
4 12 4 bytesPerRow I
5 11 5 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=47, 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 6
imul
iload 19
imul
bipush 7
iadd
bipush 8
idiv
istore 22
start local 22 30: iload 19
bipush 16
if_icmpne 31
iload 22
iconst_2
idiv
goto 32
StackMap locals: int int
StackMap stack:
31: iload 22
StackMap locals:
StackMap stack: int
32: istore 23
start local 23 33: iload 16
ifne 41
34: iconst_0
istore 24
start local 24 35: goto 39
36: StackMap locals: int int
StackMap stack:
aload 0
iload 6
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.updateImageProgress:(I)V
37: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
iconst_1
iload 22
iadd
invokevirtual java.io.DataInputStream.skipBytes:(I)I
pop
38: iinc 24 1
StackMap locals:
StackMap stack:
39: iload 24
iload 7
if_icmplt 36
end local 24 40: return
41: 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
42: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
getfield java.awt.Rectangle.x:I
43: iadd
44: istore 24
start local 24 45: iload 24
iload 2
isub
iload 4
idiv
istore 25
start local 25 46: iload 17
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceXSubsampling:I
imul
iload 4
idiv
istore 26
start local 26 47: aconst_null
astore 27
start local 27 48: aconst_null
astore 28
start local 28 49: iload 22
newarray 8
astore 29
start local 29 50: iload 22
newarray 8
astore 30
start local 30 51: aload 0
iload 6
iconst_1
iload 20
52: iload 23
53: iload 19
54: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.createRaster:(IIIII)Ljava/awt/image/WritableRaster;
astore 31
start local 31 55: aload 31
iconst_0
iconst_0
aconst_null
invokevirtual java.awt.image.WritableRaster.getPixel:(II[I)[I
astore 32
start local 32 56: aload 31
invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
astore 33
start local 33 57: aload 33
invokevirtual java.awt.image.DataBuffer.getDataType:()I
istore 34
start local 34 58: iload 34
ifne 61
59: aload 33
checkcast java.awt.image.DataBufferByte
invokevirtual java.awt.image.DataBufferByte.getData:()[B
astore 27
60: goto 62
61: 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 byte[] short[] byte[] byte[] java.awt.image.WritableRaster int[] java.awt.image.DataBuffer int
StackMap stack:
aload 33
checkcast java.awt.image.DataBufferUShort
invokevirtual java.awt.image.DataBufferUShort.getData:()[S
astore 28
62: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
63: iload 1
64: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceMinProgressivePass:I
65: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceMaxProgressivePass:I
66: iload 14
iload 15
67: iload 17
iload 18
68: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
69: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processPassStarted:(Ljava/awt/image/BufferedImage;IIIIIII[I)V
70: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceBands:[I
ifnull 76
71: aload 31
iconst_0
iconst_0
72: aload 31
invokevirtual java.awt.image.WritableRaster.getWidth:()I
iconst_1
73: iconst_0
iconst_0
74: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceBands:[I
75: invokevirtual java.awt.image.WritableRaster.createWritableChild:(IIIIII[I)Ljava/awt/image/WritableRaster;
astore 31
76: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
ifnull 83
77: aload 8
iconst_0
iconst_0
78: aload 8
invokevirtual java.awt.image.WritableRaster.getWidth:()I
79: aload 8
invokevirtual java.awt.image.WritableRaster.getHeight:()I
80: iconst_0
iconst_0
81: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
82: invokevirtual java.awt.image.WritableRaster.createWritableChild:(IIIIII[I)Ljava/awt/image/WritableRaster;
astore 8
83: StackMap locals:
StackMap stack:
iconst_0
istore 35
start local 35 84: aload 8
invokevirtual java.awt.image.WritableRaster.getSampleModel:()Ljava/awt/image/SampleModel;
invokevirtual java.awt.image.SampleModel.getSampleSize:()[I
astore 36
start local 36 85: aload 36
arraylength
istore 37
start local 37 86: iconst_0
istore 38
start local 38 87: goto 92
88: 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 byte[] short[] byte[] byte[] java.awt.image.WritableRaster int[] java.awt.image.DataBuffer int int int[] int int
StackMap stack:
aload 36
iload 38
iaload
iload 19
if_icmpeq 91
89: iconst_1
istore 35
90: goto 93
91: StackMap locals:
StackMap stack:
iinc 38 1
StackMap locals:
StackMap stack:
92: iload 38
iload 37
if_icmplt 88
end local 38 93: StackMap locals:
StackMap stack:
aconst_null
astore 38
start local 38 94: iload 35
ifeq 111
95: iconst_1
iload 19
ishl
iconst_1
isub
istore 39
start local 39 96: iload 39
iconst_2
idiv
istore 40
start local 40 97: iload 37
anewarray int[]
astore 38
98: iconst_0
istore 41
start local 41 99: goto 110
100: 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 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 36
iload 41
iaload
ishl
iconst_1
isub
istore 42
start local 42 101: aload 38
iload 41
iload 39
iconst_1
iadd
newarray 10
aastore
102: iconst_0
istore 43
start local 43 103: goto 108
104: StackMap locals: int int
StackMap stack:
aload 38
iload 41
aaload
iload 43
105: iload 43
iload 42
imul
iload 40
iadd
iload 39
idiv
106: iastore
107: iinc 43 1
StackMap locals:
StackMap stack:
108: iload 43
iload 39
if_icmple 104
end local 43 end local 42 109: iinc 41 1
StackMap locals:
StackMap stack:
110: iload 41
iload 37
if_icmplt 100
end local 41 end local 40 end local 39 111: StackMap locals:
StackMap stack:
iload 26
iconst_1
if_icmpne 116
112: iload 17
iconst_1
if_icmpne 116
113: iload 35
ifne 116
114: aload 8
instanceof sun.awt.image.ByteInterleavedRaster
ifeq 116
115: iconst_1
goto 117
StackMap locals:
StackMap stack:
116: iconst_0
StackMap locals:
StackMap stack: int
117: istore 39
start local 39 118: iload 39
ifeq 124
119: aload 31
iload 25
iconst_0
120: iload 16
iconst_1
121: iconst_0
iconst_0
122: aconst_null
123: invokevirtual java.awt.image.WritableRaster.createWritableChild:(IIIIII[I)Ljava/awt/image/WritableRaster;
astore 31
124: StackMap locals: int
StackMap stack:
iconst_0
istore 40
start local 40 125: goto 204
126: StackMap locals: int
StackMap stack:
aload 0
iload 6
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.updateImageProgress:(I)V
127: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
invokevirtual java.io.DataInputStream.read:()I
istore 41
start local 41 128: aload 30
astore 42
start local 42 129: aload 29
astore 30
130: aload 42
astore 29
131: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.pixelStream:Ljava/io/DataInputStream;
aload 29
iconst_0
iload 22
invokevirtual java.io.DataInputStream.readFully:([BII)V
end local 42 132: goto 135
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 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
133: astore 42
start local 42 134: aload 42
athrow
end local 42 135: StackMap locals:
StackMap stack:
iload 41
tableswitch { // 0 - 4
0: 136
1: 137
2: 139
3: 141
4: 145
default: 149
}
136: StackMap locals:
StackMap stack:
goto 152
137: StackMap locals:
StackMap stack:
aload 29
iconst_0
iload 22
iload 21
invokestatic com.sun.imageio.plugins.png.PNGImageReader.decodeSubFilter:([BIII)V
138: goto 152
139: StackMap locals:
StackMap stack:
aload 29
iconst_0
aload 30
iconst_0
iload 22
invokestatic com.sun.imageio.plugins.png.PNGImageReader.decodeUpFilter:([BI[BII)V
140: goto 152
141: StackMap locals:
StackMap stack:
aload 29
iconst_0
aload 30
iconst_0
iload 22
142: iload 21
143: invokestatic com.sun.imageio.plugins.png.PNGImageReader.decodeAverageFilter:([BI[BIII)V
144: goto 152
145: StackMap locals:
StackMap stack:
aload 29
iconst_0
aload 30
iconst_0
iload 22
146: iload 21
147: invokestatic com.sun.imageio.plugins.png.PNGImageReader.decodePaethFilter:([BI[BIII)V
148: goto 152
149: 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
150: iload 41
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;
151: invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
athrow
152: StackMap locals:
StackMap stack:
iload 19
bipush 16
if_icmpge 155
153: aload 29
iconst_0
aload 27
iconst_0
iload 22
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
154: goto 164
155: StackMap locals:
StackMap stack:
iconst_0
istore 42
start local 42 156: iconst_0
istore 43
start local 43 157: goto 163
158: StackMap locals: int int
StackMap stack:
aload 28
iload 43
159: aload 29
iload 42
baload
bipush 8
ishl
aload 29
iload 42
iconst_1
iadd
baload
sipush 255
iand
ior
i2s
160: sastore
161: iinc 42 2
162: iinc 43 1
StackMap locals:
StackMap stack:
163: iload 43
iload 23
if_icmplt 158
end local 43 end local 42 164: StackMap locals:
StackMap stack:
iload 40
iload 5
imul
iload 3
iadd
istore 42
start local 42 165: iload 42
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
getfield java.awt.Rectangle.y:I
if_icmplt 203
166: iload 42
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 203
167: iload 42
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceRegion:Ljava/awt/Rectangle;
getfield java.awt.Rectangle.y:I
isub
168: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceYSubsampling:I
169: irem
ifne 203
170: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationOffset:Ljava/awt/Point;
getfield java.awt.Point.y:I
171: iload 42
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
172: iadd
istore 43
start local 43 173: iload 43
iload 11
if_icmpge 175
174: goto 203
175: StackMap locals: int int
StackMap stack:
iload 43
iload 12
if_icmple 177
176: goto 205
177: StackMap locals:
StackMap stack:
iload 39
ifeq 180
178: aload 8
iload 14
iload 43
aload 31
invokevirtual java.awt.image.WritableRaster.setRect:(IILjava/awt/image/Raster;)V
179: goto 195
180: StackMap locals:
StackMap stack:
iload 25
istore 44
start local 44 181: iload 14
istore 45
start local 45 182: goto 193
183: StackMap locals: int int
StackMap stack:
aload 31
iload 44
iconst_0
aload 32
invokevirtual java.awt.image.WritableRaster.getPixel:(II[I)[I
pop
184: iload 35
ifeq 190
185: iconst_0
istore 46
start local 46 186: goto 189
187: StackMap locals: int
StackMap stack:
aload 32
iload 46
aload 38
iload 46
aaload
aload 32
iload 46
iaload
iaload
iastore
188: iinc 46 1
StackMap locals:
StackMap stack:
189: iload 46
iload 37
if_icmplt 187
end local 46 190: StackMap locals:
StackMap stack:
aload 8
iload 45
iload 43
aload 32
invokevirtual java.awt.image.WritableRaster.setPixel:(II[I)V
191: iload 44
iload 26
iadd
istore 44
192: iload 45
iload 17
iadd
istore 45
193: StackMap locals:
StackMap stack:
iload 45
iload 14
iload 16
iadd
194: if_icmplt 183
end local 45 end local 44 195: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.theImage:Ljava/awt/image/BufferedImage;
196: iload 14
iload 43
197: iload 16
iconst_1
198: iload 17
iload 18
199: aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.destinationBands:[I
200: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
201: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.abortRequested:()Z
ifeq 203
202: return
end local 43 end local 42 end local 41 203: StackMap locals:
StackMap stack:
iinc 40 1
StackMap locals:
StackMap stack:
204: iload 40
iload 7
if_icmplt 126
end local 40 205: 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
206: return
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 207 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 207 1 passNum I
0 207 2 xStart I
0 207 3 yStart I
0 207 4 xStep I
0 207 5 yStep I
0 207 6 passWidth I
0 207 7 passHeight I
3 207 8 imRas Ljava/awt/image/WritableRaster;
4 207 9 dstMinX I
5 207 10 dstMaxX I
6 207 11 dstMinY I
7 207 12 dstMaxY I
18 207 13 vals [I
19 207 14 updateMinX I
20 207 15 updateMinY I
21 207 16 updateWidth I
22 207 17 updateXStep I
23 207 18 updateYStep I
24 207 19 bitDepth I
25 207 20 inputBands I
28 207 21 bytesPerPixel I
30 207 22 bytesPerRow I
33 207 23 eltsPerRow I
35 40 24 srcY I
45 207 24 sourceX I
46 207 25 srcX I
47 207 26 srcXStep I
48 207 27 byteData [B
49 207 28 shortData [S
50 207 29 curr [B
51 207 30 prior [B
55 207 31 passRow Ljava/awt/image/WritableRaster;
56 207 32 ps [I
57 207 33 dataBuffer Ljava/awt/image/DataBuffer;
58 207 34 type I
84 207 35 adjustBitDepths Z
85 207 36 outputSampleSize [I
86 207 37 numBands I
87 93 38 b I
94 207 38 scale [[I
96 111 39 maxInSample I
97 111 40 halfMaxInSample I
99 111 41 b I
101 109 42 maxOutSample I
103 109 43 s I
118 207 39 useSetRect Z
125 205 40 srcY I
128 203 41 filter I
129 132 42 tmp [B
134 135 42 ze Ljava/util/zip/ZipException;
156 164 42 idx I
157 164 43 j I
165 203 42 sourceY I
173 203 43 dstY I
181 195 44 newSrcX I
182 195 45 dstX I
186 190 46 b I
Exception table:
from to target type
128 132 133 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
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.clearAbortRequest:()V
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_interlaceMethod:I
ifne 8
6: 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
7: goto 33
8: StackMap locals: int int
StackMap stack:
iconst_0
istore 3
start local 3 9: goto 32
10: StackMap locals: int
StackMap stack:
getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7XOffset:[I
iload 3
iaload
istore 4
start local 4 11: getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7YOffset:[I
iload 3
iaload
istore 5
start local 5 12: getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7XSubsampling:[I
iload 3
iaload
istore 6
start local 6 13: getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7YSubsampling:[I
iload 3
iaload
istore 7
start local 7 14: getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7XSubsampling:[I
iload 3
iconst_1
iadd
iaload
iconst_1
isub
istore 8
start local 8 15: getstatic com.sun.imageio.plugins.png.PNGImageReader.adam7YSubsampling:[I
iload 3
iconst_1
iadd
iaload
iconst_1
isub
istore 9
start local 9 16: iload 3
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceMinProgressivePass:I
if_icmplt 26
17: aload 0
iload 3
18: iload 4
19: iload 5
20: iload 6
21: iload 7
22: iload 1
iload 8
iadd
iload 6
idiv
23: iload 2
iload 9
iadd
iload 7
idiv
24: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.decodePass:(IIIIIII)V
25: goto 29
26: 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
27: iload 2
iload 9
iadd
iload 7
idiv
28: invokevirtual com.sun.imageio.plugins.png.PNGImageReader.skipPass:(II)V
29: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.abortRequested:()Z
ifeq 31
30: return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 31: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader int int int
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
32: iload 3
aload 0
getfield com.sun.imageio.plugins.png.PNGImageReader.sourceMaxProgressivePass:I
if_icmple 10
end local 3 33: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
1 34 1 width I
2 34 2 height I
9 33 3 i I
11 31 4 XOffset I
12 31 5 YOffset I
13 31 6 XSubsampling I
14 31 7 YSubsampling I
15 31 8 xbump I
16 31 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 1
44: getstatic com.sun.imageio.plugins.png.PNGImageReader.inputBandsForColorType:[I
iload 8
iaload
45: 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
46: invokestatic com.sun.imageio.plugins.png.PNGImageReader.checkReadParamBandSettings:(Ljavax/imageio/ImageReadParam;II)V
47: aload 0
iconst_0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processImageStarted:(I)V
48: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.decodeImage:()V
49: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.abortRequested:()Z
ifeq 52
50: aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processReadAborted:()V
51: goto 60
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 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.processImageComplete:()V
end local 8 end local 7 end local 6 end local 5 53: goto 60
StackMap locals: com.sun.imageio.plugins.png.PNGImageReader javax.imageio.ImageReadParam int int java.util.zip.Inflater
StackMap stack: java.io.IOException
54: astore 5
start local 5 55: 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 56: StackMap locals:
StackMap stack: java.lang.Throwable
astore 9
57: aload 4
ifnull 59
58: aload 4
invokevirtual java.util.zip.Inflater.end:()V
59: 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
60: StackMap locals: com.sun.imageio.plugins.png.PNGImageReader javax.imageio.ImageReadParam int int java.util.zip.Inflater
StackMap stack:
aload 4
ifnull 62
61: aload 4
invokevirtual java.util.zip.Inflater.end:()V
62: 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 63 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 63 1 param Ljavax/imageio/ImageReadParam;
2 63 2 width I
3 63 3 height I
23 63 4 inf Ljava/util/zip/Inflater;
25 53 5 e Ljava/util/Enumeration<Ljava/io/InputStream;>;
26 53 6 is Ljava/io/InputStream;
36 53 7 destRegion Ljava/awt/Rectangle;
43 53 8 colorType I
55 56 5 e Ljava/io/IOException;
Exception table:
from to target type
23 53 54 Class java.io.IOException
23 56 56 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: 104
2: 17
3: 39
4: 73
5: 104
6: 84
default: 104
}
12: StackMap locals:
StackMap stack:
aload 2
iload 6
13: iload 8
14: iconst_0
15: invokestatic javax.imageio.ImageTypeSpecifier.createGrayscale:(IIZ)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
16: goto 104
17: StackMap locals:
StackMap stack:
iload 6
bipush 8
if_icmpne 27
18: aload 2
19: iconst_5
20: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
21: aload 2
22: iconst_1
23: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
24: aload 2
25: iconst_4
26: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
27: StackMap locals:
StackMap stack:
sipush 1000
invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
astore 3
start local 3 28: iconst_3
newarray 10
astore 5
start local 5 29: aload 5
iconst_0
iconst_0
iastore
30: aload 5
iconst_1
iconst_1
iastore
31: aload 5
iconst_2
iconst_2
iastore
32: aload 2
aload 3
33: aload 5
34: iload 8
35: iconst_0
36: iconst_0
37: invokestatic javax.imageio.ImageTypeSpecifier.createInterleaved:(Ljava/awt/color/ColorSpace;[IIZZ)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
38: goto 104
end local 5 end local 3 39: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.imageio.plugins.png.PNGImageReader.readMetadata:()V
40: iconst_1
iload 6
ishl
istore 9
start local 9 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_red:[B
astore 10
start local 10 42: 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 43: 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 44: 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 57
45: 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
46: 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
47: 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
48: invokestatic java.util.Arrays.fill:([BIIB)V
49: 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
50: 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
51: 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
52: invokestatic java.util.Arrays.fill:([BIIB)V
53: 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
54: 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
55: 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
56: invokestatic java.util.Arrays.fill:([BIIB)V
57: 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 58: 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 67
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 67
59: 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 62
60: 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
61: goto 67
62: 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
63: aload 13
64: 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
65: aload 10
arraylength
iconst_m1
66: invokestatic java.util.Arrays.fill:([BIIB)V
67: StackMap locals:
StackMap stack:
aload 2
aload 10
aload 11
68: aload 12
aload 13
69: iload 6
70: iconst_0
71: invokestatic javax.imageio.ImageTypeSpecifier.createIndexed:([B[B[B[BII)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
72: goto 104
end local 13 end local 12 end local 11 end local 10 end local 9 73: 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 74: iconst_2
newarray 10
astore 5
start local 5 75: aload 5
iconst_0
iconst_0
iastore
76: aload 5
iconst_1
iconst_1
iastore
77: aload 2
aload 4
78: aload 5
79: iload 8
80: iconst_1
81: iconst_0
82: invokestatic javax.imageio.ImageTypeSpecifier.createInterleaved:(Ljava/awt/color/ColorSpace;[IIZZ)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
83: goto 104
end local 5 end local 4 84: StackMap locals:
StackMap stack:
iload 6
bipush 8
if_icmpne 91
85: aload 2
86: bipush 6
87: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
88: aload 2
89: iconst_2
90: invokestatic javax.imageio.ImageTypeSpecifier.createFromBufferedImageType:(I)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
91: StackMap locals:
StackMap stack:
sipush 1000
invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
astore 3
start local 3 92: iconst_4
newarray 10
astore 5
start local 5 93: aload 5
iconst_0
iconst_0
iastore
94: aload 5
iconst_1
iconst_1
iastore
95: aload 5
iconst_2
iconst_2
iastore
96: aload 5
iconst_3
iconst_3
iastore
97: aload 2
aload 3
98: aload 5
99: iload 8
100: iconst_1
101: iconst_0
102: invokestatic javax.imageio.ImageTypeSpecifier.createInterleaved:(Ljava/awt/color/ColorSpace;[IIZZ)Ljavax/imageio/ImageTypeSpecifier;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
103: goto 104
end local 5 end local 3 104: 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 105 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 105 1 imageIndex I
5 105 2 l Ljava/util/ArrayList<Ljavax/imageio/ImageTypeSpecifier;>;
28 39 3 rgb Ljava/awt/color/ColorSpace;
92 104 3 rgb Ljava/awt/color/ColorSpace;
74 84 4 gray Ljava/awt/color/ColorSpace;
29 39 5 bandOffsets [I
75 84 5 bandOffsets [I
93 104 5 bandOffsets [I
6 105 6 bitDepth I
7 105 7 colorType I
9 10 8 dataType I
11 105 8 dataType I
41 73 9 plength I
42 73 10 red [B
43 73 11 green [B
44 73 12 blue [B
58 73 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=3, locals=3, 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: 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 4 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
0 4 1 imageIndex I
0 4 2 param Ljavax/imageio/ImageReadParam;
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=2, 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: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/imageio/plugins/png/PNGImageReader;
}
SourceFile: "PNGImageReader.java"