class sun.awt.image.GifFrame
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.awt.image.GifFrame
super_class: java.lang.Object
{
private static final boolean verbose;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final int DISPOSAL_NONE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final int DISPOSAL_SAVE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1
static final int DISPOSAL_BGCOLOR;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2
static final int DISPOSAL_PREVIOUS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 3
sun.awt.image.GifImageDecoder decoder;
descriptor: Lsun/awt/image/GifImageDecoder;
flags: (0x0000)
int disposal_method;
descriptor: I
flags: (0x0000)
int delay;
descriptor: I
flags: (0x0000)
java.awt.image.IndexColorModel model;
descriptor: Ljava/awt/image/IndexColorModel;
flags: (0x0000)
int x;
descriptor: I
flags: (0x0000)
int y;
descriptor: I
flags: (0x0000)
int width;
descriptor: I
flags: (0x0000)
int height;
descriptor: I
flags: (0x0000)
boolean initialframe;
descriptor: Z
flags: (0x0000)
public void <init>(sun.awt.image.GifImageDecoder, int, int, boolean, java.awt.image.IndexColorModel, int, int, int, int);
descriptor: (Lsun/awt/image/GifImageDecoder;IIZLjava/awt/image/IndexColorModel;IIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=10, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield sun.awt.image.GifFrame.decoder:Lsun/awt/image/GifImageDecoder;
2: aload 0
iload 2
putfield sun.awt.image.GifFrame.disposal_method:I
3: aload 0
iload 3
putfield sun.awt.image.GifFrame.delay:I
4: aload 0
aload 5
putfield sun.awt.image.GifFrame.model:Ljava/awt/image/IndexColorModel;
5: aload 0
iload 4
putfield sun.awt.image.GifFrame.initialframe:Z
6: aload 0
iload 6
putfield sun.awt.image.GifFrame.x:I
7: aload 0
iload 7
putfield sun.awt.image.GifFrame.y:I
8: aload 0
iload 8
putfield sun.awt.image.GifFrame.width:I
9: aload 0
iload 9
putfield sun.awt.image.GifFrame.height:I
10: return
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 11 0 this Lsun/awt/image/GifFrame;
0 11 1 id Lsun/awt/image/GifImageDecoder;
0 11 2 dm I
0 11 3 dl I
0 11 4 init Z
0 11 5 cm Ljava/awt/image/IndexColorModel;
0 11 6 x I
0 11 7 y I
0 11 8 w I
0 11 9 h I
MethodParameters:
Name Flags
id
dm
dl
init
cm
x
y
w
h
private void setPixels(int, int, int, int, java.awt.image.ColorModel, byte[], int, int);
descriptor: (IIIILjava/awt/image/ColorModel;[BII)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
getfield sun.awt.image.GifFrame.decoder:Lsun/awt/image/GifImageDecoder;
iload 1
iload 2
iload 3
iload 4
aload 5
aload 6
iload 7
iload 8
invokevirtual sun.awt.image.GifImageDecoder.setPixels:(IIIILjava/awt/image/ColorModel;[BII)I
pop
1: return
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 2 0 this Lsun/awt/image/GifFrame;
0 2 1 x I
0 2 2 y I
0 2 3 w I
0 2 4 h I
0 2 5 cm Ljava/awt/image/ColorModel;
0 2 6 pix [B
0 2 7 off I
0 2 8 scan I
MethodParameters:
Name Flags
x
y
w
h
cm
pix
off
scan
public boolean dispose();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=8, args_size=1
start local 0 0: aload 0
getfield sun.awt.image.GifFrame.decoder:Lsun/awt/image/GifImageDecoder;
iconst_2
iconst_0
invokevirtual sun.awt.image.GifImageDecoder.imageComplete:(IZ)I
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.delay:I
ifle 7
3: aload 0
getfield sun.awt.image.GifFrame.delay:I
i2l
invokestatic java.lang.Thread.sleep:(J)V
4: goto 8
StackMap locals:
StackMap stack: java.lang.InterruptedException
5: pop
6: iconst_0
ireturn
7: StackMap locals:
StackMap stack:
invokestatic java.lang.Thread.yield:()V
8: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.decoder:Lsun/awt/image/GifImageDecoder;
getfield sun.awt.image.GifImageDecoder.global_width:I
istore 1
start local 1 9: aload 0
getfield sun.awt.image.GifFrame.decoder:Lsun/awt/image/GifImageDecoder;
getfield sun.awt.image.GifImageDecoder.global_height:I
istore 2
start local 2 10: aload 0
getfield sun.awt.image.GifFrame.x:I
ifge 13
11: aload 0
dup
getfield sun.awt.image.GifFrame.width:I
aload 0
getfield sun.awt.image.GifFrame.x:I
iadd
putfield sun.awt.image.GifFrame.width:I
12: aload 0
iconst_0
putfield sun.awt.image.GifFrame.x:I
13: StackMap locals: int int
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.x:I
aload 0
getfield sun.awt.image.GifFrame.width:I
iadd
iload 1
if_icmple 15
14: aload 0
iload 1
aload 0
getfield sun.awt.image.GifFrame.x:I
isub
putfield sun.awt.image.GifFrame.width:I
15: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.width:I
ifgt 18
16: aload 0
iconst_0
putfield sun.awt.image.GifFrame.disposal_method:I
17: goto 25
18: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.y:I
ifge 21
19: aload 0
dup
getfield sun.awt.image.GifFrame.height:I
aload 0
getfield sun.awt.image.GifFrame.y:I
iadd
putfield sun.awt.image.GifFrame.height:I
20: aload 0
iconst_0
putfield sun.awt.image.GifFrame.y:I
21: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.y:I
aload 0
getfield sun.awt.image.GifFrame.height:I
iadd
iload 2
if_icmple 23
22: aload 0
iload 2
aload 0
getfield sun.awt.image.GifFrame.y:I
isub
putfield sun.awt.image.GifFrame.height:I
23: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.height:I
ifgt 25
24: aload 0
iconst_0
putfield sun.awt.image.GifFrame.disposal_method:I
25: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.disposal_method:I
tableswitch { // 1 - 3
1: 53
2: 34
3: 26
default: 54
}
26: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.decoder:Lsun/awt/image/GifImageDecoder;
getfield sun.awt.image.GifImageDecoder.saved_image:[B
astore 3
start local 3 27: aload 0
getfield sun.awt.image.GifFrame.decoder:Lsun/awt/image/GifImageDecoder;
getfield sun.awt.image.GifImageDecoder.saved_model:Ljava/awt/image/IndexColorModel;
astore 4
start local 4 28: aload 3
ifnull 54
29: aload 0
aload 0
getfield sun.awt.image.GifFrame.x:I
aload 0
getfield sun.awt.image.GifFrame.y:I
aload 0
getfield sun.awt.image.GifFrame.width:I
aload 0
getfield sun.awt.image.GifFrame.height:I
30: aload 4
aload 3
31: aload 0
getfield sun.awt.image.GifFrame.y:I
iload 1
imul
aload 0
getfield sun.awt.image.GifFrame.x:I
iadd
iload 1
32: invokevirtual sun.awt.image.GifFrame.setPixels:(IIIILjava/awt/image/ColorModel;[BII)V
33: goto 54
end local 4 end local 3 34: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.model:Ljava/awt/image/IndexColorModel;
invokevirtual java.awt.image.IndexColorModel.getTransparentPixel:()I
ifge 37
35: iconst_0
istore 5
start local 5 36: goto 38
end local 5 37: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.model:Ljava/awt/image/IndexColorModel;
invokevirtual java.awt.image.IndexColorModel.getTransparentPixel:()I
i2b
istore 5
start local 5 38: StackMap locals: sun.awt.image.GifFrame int int top top int
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.width:I
newarray 8
astore 6
start local 6 39: iload 5
ifeq 45
40: iconst_0
istore 7
start local 7 41: goto 44
42: StackMap locals: byte[] int
StackMap stack:
aload 6
iload 7
iload 5
bastore
43: iinc 7 1
StackMap locals:
StackMap stack:
44: iload 7
aload 0
getfield sun.awt.image.GifFrame.width:I
if_icmplt 42
end local 7 45: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.decoder:Lsun/awt/image/GifImageDecoder;
getfield sun.awt.image.GifImageDecoder.saved_image:[B
ifnull 51
46: iconst_0
istore 7
start local 7 47: goto 50
48: StackMap locals: int
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.decoder:Lsun/awt/image/GifImageDecoder;
getfield sun.awt.image.GifImageDecoder.saved_image:[B
iload 7
iload 5
bastore
49: iinc 7 1
StackMap locals:
StackMap stack:
50: iload 7
iload 1
iload 2
imul
if_icmplt 48
end local 7 51: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.awt.image.GifFrame.x:I
aload 0
getfield sun.awt.image.GifFrame.y:I
aload 0
getfield sun.awt.image.GifFrame.width:I
aload 0
getfield sun.awt.image.GifFrame.height:I
aload 0
getfield sun.awt.image.GifFrame.model:Ljava/awt/image/IndexColorModel;
aload 6
iconst_0
iconst_0
invokevirtual sun.awt.image.GifFrame.setPixels:(IIIILjava/awt/image/ColorModel;[BII)V
52: goto 54
end local 6 end local 5 53: StackMap locals: sun.awt.image.GifFrame int int
StackMap stack:
aload 0
getfield sun.awt.image.GifFrame.decoder:Lsun/awt/image/GifImageDecoder;
aload 0
getfield sun.awt.image.GifFrame.model:Ljava/awt/image/IndexColorModel;
putfield sun.awt.image.GifImageDecoder.saved_model:Ljava/awt/image/IndexColorModel;
end local 2 end local 1 54: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 55 0 this Lsun/awt/image/GifFrame;
9 54 1 global_width I
10 54 2 global_height I
27 34 3 saved_image [B
28 34 4 saved_model Ljava/awt/image/IndexColorModel;
36 37 5 tpix B
38 53 5 tpix B
39 53 6 rasline [B
41 45 7 i I
47 51 7 i I
Exception table:
from to target type
3 4 5 Class java.lang.InterruptedException
}
SourceFile: "GifImageDecoder.java"