public class org.eclipse.jgit.internal.storage.file.PackFile implements java.lang.Iterable<org.eclipse.jgit.internal.storage.file.PackIndex$MutableEntry>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jgit.internal.storage.file.PackFile
super_class: java.lang.Object
{
private static final org.slf4j.Logger LOG;
descriptor: Lorg/slf4j/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final java.util.Comparator<org.eclipse.jgit.internal.storage.file.PackFile> SORT;
descriptor: Ljava/util/Comparator;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Comparator<Lorg/eclipse/jgit/internal/storage/file/PackFile;>;
private final java.io.File packFile;
descriptor: Ljava/io/File;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int extensions;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.io.File keepFile;
descriptor: Ljava/io/File;
flags: (0x0002) ACC_PRIVATE
private volatile java.lang.String packName;
descriptor: Ljava/lang/String;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
final int hash;
descriptor: I
flags: (0x0010) ACC_FINAL
private java.io.RandomAccessFile fd;
descriptor: Ljava/io/RandomAccessFile;
flags: (0x0002) ACC_PRIVATE
private final java.lang.Object readLock;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
long length;
descriptor: J
flags: (0x0000)
private int activeWindows;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int activeCopyRawData;
descriptor: I
flags: (0x0002) ACC_PRIVATE
java.time.Instant packLastModified;
descriptor: Ljava/time/Instant;
flags: (0x0000)
private org.eclipse.jgit.internal.storage.file.PackFileSnapshot fileSnapshot;
descriptor: Lorg/eclipse/jgit/internal/storage/file/PackFileSnapshot;
flags: (0x0002) ACC_PRIVATE
private volatile boolean invalid;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile java.lang.Exception invalidatingCause;
descriptor: Ljava/lang/Exception;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private boolean invalidBitmap;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.util.concurrent.atomic.AtomicInteger transientErrorCount;
descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
flags: (0x0002) ACC_PRIVATE
private byte[] packChecksum;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
private volatile org.eclipse.jgit.internal.storage.file.PackIndex loadedIdx;
descriptor: Lorg/eclipse/jgit/internal/storage/file/PackIndex;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private org.eclipse.jgit.internal.storage.file.PackReverseIndex reverseIdx;
descriptor: Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
flags: (0x0002) ACC_PRIVATE
private org.eclipse.jgit.internal.storage.file.PackBitmapIndex bitmapIdx;
descriptor: Lorg/eclipse/jgit/internal/storage/file/PackBitmapIndex;
flags: (0x0002) ACC_PRIVATE
private volatile org.eclipse.jgit.util.LongList corruptObjects;
descriptor: Lorg/eclipse/jgit/util/LongList;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/eclipse/jgit/internal/storage/file/PackFile;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
3: ldc Lorg/eclipse/jgit/internal/storage/file/PackFile;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic org.eclipse.jgit.internal.storage.file.PackFile.LOG:Lorg/slf4j/Logger;
4: invokedynamic compare()Ljava/util/Comparator;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)I
org/eclipse/jgit/internal/storage/file/PackFile.lambda$0(Lorg/eclipse/jgit/internal/storage/file/PackFile;Lorg/eclipse/jgit/internal/storage/file/PackFile;)I (6)
(Lorg/eclipse/jgit/internal/storage/file/PackFile;Lorg/eclipse/jgit/internal/storage/file/PackFile;)I
putstatic org.eclipse.jgit.internal.storage.file.PackFile.SORT:Ljava/util/Comparator;
5: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.io.File, int);
descriptor: (Ljava/io/File;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield org.eclipse.jgit.internal.storage.file.PackFile.readLock:Ljava/lang/Object;
2: aload 0
new java.util.concurrent.atomic.AtomicInteger
dup
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
putfield org.eclipse.jgit.internal.storage.file.PackFile.transientErrorCount:Ljava/util/concurrent/atomic/AtomicInteger;
3: aload 0
aload 1
putfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
4: aload 0
aload 1
invokestatic org.eclipse.jgit.internal.storage.file.PackFileSnapshot.save:(Ljava/io/File;)Lorg/eclipse/jgit/internal/storage/file/PackFileSnapshot;
putfield org.eclipse.jgit.internal.storage.file.PackFile.fileSnapshot:Lorg/eclipse/jgit/internal/storage/file/PackFileSnapshot;
5: aload 0
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fileSnapshot:Lorg/eclipse/jgit/internal/storage/file/PackFileSnapshot;
invokevirtual org.eclipse.jgit.internal.storage.file.PackFileSnapshot.lastModifiedInstant:()Ljava/time/Instant;
putfield org.eclipse.jgit.internal.storage.file.PackFile.packLastModified:Ljava/time/Instant;
6: aload 0
iload 2
putfield org.eclipse.jgit.internal.storage.file.PackFile.extensions:I
7: aload 0
aload 0
invokestatic java.lang.System.identityHashCode:(Ljava/lang/Object;)I
bipush 31
imul
putfield org.eclipse.jgit.internal.storage.file.PackFile.hash:I
8: aload 0
ldc 9223372036854775807
putfield org.eclipse.jgit.internal.storage.file.PackFile.length:J
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 10 1 packFile Ljava/io/File;
0 10 2 extensions I
MethodParameters:
Name Flags
packFile
extensions
private org.eclipse.jgit.internal.storage.file.PackIndex idx();
descriptor: ()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=5, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.loadedIdx:Lorg/eclipse/jgit/internal/storage/file/PackIndex;
astore 1
start local 1 1: aload 1
ifnonnull 51
2: aload 0
dup
astore 2
monitorenter
3: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.loadedIdx:Lorg/eclipse/jgit/internal/storage/file/PackIndex;
astore 1
4: aload 1
ifnonnull 47
5: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.invalid:Z
ifeq 7
6: new org.eclipse.jgit.errors.PackInvalidException
dup
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.invalidatingCause:Ljava/lang/Exception;
invokespecial org.eclipse.jgit.errors.PackInvalidException.<init>:(Ljava/io/File;Ljava/lang/Throwable;)V
athrow
7: StackMap locals: org.eclipse.jgit.internal.storage.file.PackIndex org.eclipse.jgit.internal.storage.file.PackFile
StackMap stack:
invokestatic java.lang.System.currentTimeMillis:()J
lstore 3
start local 3 8: aload 0
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.extFile:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Ljava/io/File;
invokestatic org.eclipse.jgit.internal.storage.file.PackIndex.open:(Ljava/io/File;)Lorg/eclipse/jgit/internal/storage/file/PackIndex;
astore 1
9: getstatic org.eclipse.jgit.internal.storage.file.PackFile.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 20
10: getstatic org.eclipse.jgit.internal.storage.file.PackFile.LOG:Lorg/slf4j/Logger;
11: ldc "Opening pack index %s, size %.3f MB took %d ms"
iconst_3
anewarray java.lang.Object
dup
iconst_0
12: aload 0
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.extFile:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Ljava/io/File;
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
aastore
dup
iconst_1
13: aload 0
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.extFile:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Ljava/io/File;
invokevirtual java.io.File.length:()J
l2f
14: ldc 1048576.0
15: fdiv
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
aastore
dup
iconst_2
16: invokestatic java.lang.System.currentTimeMillis:()J
17: lload 3
18: lsub
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
19: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;)V
20: StackMap locals: long
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packChecksum:[B
ifnonnull 26
21: aload 0
aload 1
getfield org.eclipse.jgit.internal.storage.file.PackIndex.packChecksum:[B
putfield org.eclipse.jgit.internal.storage.file.PackFile.packChecksum:[B
22: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fileSnapshot:Lorg/eclipse/jgit/internal/storage/file/PackFileSnapshot;
23: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packChecksum:[B
invokestatic org.eclipse.jgit.lib.ObjectId.fromRaw:([B)Lorg/eclipse/jgit/lib/ObjectId;
24: invokevirtual org.eclipse.jgit.internal.storage.file.PackFileSnapshot.setChecksum:(Lorg/eclipse/jgit/lib/AnyObjectId;)V
25: goto 39
StackMap locals:
StackMap stack:
26: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packChecksum:[B
27: aload 1
getfield org.eclipse.jgit.internal.storage.file.PackIndex.packChecksum:[B
28: invokestatic java.util.Arrays.equals:([B[B)Z
29: ifne 39
30: new org.eclipse.jgit.errors.PackMismatchException
dup
31: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.packChecksumMismatch:Ljava/lang/String;
iconst_3
anewarray java.lang.Object
dup
iconst_0
32: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
invokevirtual java.io.File.getPath:()Ljava/lang/String;
aastore
dup
iconst_1
33: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packChecksum:[B
invokestatic org.eclipse.jgit.lib.ObjectId.fromRaw:([B)Lorg/eclipse/jgit/lib/ObjectId;
34: invokevirtual org.eclipse.jgit.lib.ObjectId.name:()Ljava/lang/String;
aastore
dup
iconst_2
35: aload 1
getfield org.eclipse.jgit.internal.storage.file.PackIndex.packChecksum:[B
invokestatic org.eclipse.jgit.lib.ObjectId.fromRaw:([B)Lorg/eclipse/jgit/lib/ObjectId;
36: invokevirtual org.eclipse.jgit.lib.ObjectId.name:()Ljava/lang/String;
aastore
37: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
38: invokespecial org.eclipse.jgit.errors.PackMismatchException.<init>:(Ljava/lang/String;)V
athrow
39: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.eclipse.jgit.internal.storage.file.PackFile.loadedIdx:Lorg/eclipse/jgit/internal/storage/file/PackIndex;
end local 3 40: goto 47
StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.file.PackIndex org.eclipse.jgit.internal.storage.file.PackFile
StackMap stack: java.io.InterruptedIOException
41: astore 3
start local 3 42: aload 3
athrow
end local 3 43: StackMap locals:
StackMap stack: java.io.IOException
astore 3
start local 3 44: aload 0
iconst_1
putfield org.eclipse.jgit.internal.storage.file.PackFile.invalid:Z
45: aload 0
aload 3
putfield org.eclipse.jgit.internal.storage.file.PackFile.invalidatingCause:Ljava/lang/Exception;
46: aload 3
athrow
end local 3 47: StackMap locals:
StackMap stack:
aload 2
monitorexit
48: goto 51
StackMap locals:
StackMap stack: java.lang.Throwable
49: aload 2
monitorexit
50: athrow
51: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 52 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
1 52 1 idx Lorg/eclipse/jgit/internal/storage/file/PackIndex;
8 40 3 start J
42 43 3 e Ljava/io/InterruptedIOException;
44 47 3 e Ljava/io/IOException;
Exception table:
from to target type
7 40 41 Class java.io.InterruptedIOException
7 40 43 Class java.io.IOException
3 48 49 any
49 50 49 any
Exceptions:
throws java.io.IOException
public java.io.File getPackFile();
descriptor: ()Ljava/io/File;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
public org.eclipse.jgit.internal.storage.file.PackIndex getIndex();
descriptor: ()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
Exceptions:
throws java.io.IOException
public java.lang.String getPackName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packName:Ljava/lang/String;
astore 1
start local 1 1: aload 1
ifnonnull 8
2: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getPackFile:()Ljava/io/File;
invokevirtual java.io.File.getName:()Ljava/lang/String;
astore 1
3: aload 1
ldc "pack-"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 5
4: aload 1
ldc "pack-"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
5: StackMap locals: java.lang.String
StackMap stack:
aload 1
ldc ".pack"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 7
6: aload 1
iconst_0
aload 1
invokevirtual java.lang.String.length:()I
ldc ".pack"
invokevirtual java.lang.String.length:()I
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 1
7: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.eclipse.jgit.internal.storage.file.PackFile.packName:Ljava/lang/String;
8: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
1 9 1 name Ljava/lang/String;
public boolean hasObject(org.eclipse.jgit.lib.AnyObjectId);
descriptor: (Lorg/eclipse/jgit/lib/AnyObjectId;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.findOffset:(Lorg/eclipse/jgit/lib/AnyObjectId;)J
lstore 2
start local 2 1: lconst_0
lload 2
lcmp
ifge 2
aload 0
lload 2
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.isCorrupt:(J)Z
ifne 2
iconst_1
ireturn
StackMap locals: long
StackMap stack:
2: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 3 1 id Lorg/eclipse/jgit/lib/AnyObjectId;
1 3 2 offset J
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
id
public boolean shouldBeKept();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.keepFile:Ljava/io/File;
ifnonnull 2
1: aload 0
aload 0
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.KEEP:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.extFile:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Ljava/io/File;
putfield org.eclipse.jgit.internal.storage.file.PackFile.keepFile:Ljava/io/File;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.keepFile:Ljava/io/File;
invokevirtual java.io.File.exists:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
org.eclipse.jgit.lib.ObjectLoader get(org.eclipse.jgit.internal.storage.file.WindowCursor, org.eclipse.jgit.lib.AnyObjectId);
descriptor: (Lorg/eclipse/jgit/internal/storage/file/WindowCursor;Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/lib/ObjectLoader;
flags: (0x0000)
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
aload 2
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.findOffset:(Lorg/eclipse/jgit/lib/AnyObjectId;)J
lstore 3
start local 3 1: lconst_0
lload 3
lcmp
ifge 2
aload 0
lload 3
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.isCorrupt:(J)Z
ifne 2
aload 0
aload 1
lload 3
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.load:(Lorg/eclipse/jgit/internal/storage/file/WindowCursor;J)Lorg/eclipse/jgit/lib/ObjectLoader;
goto 3
StackMap locals: long
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: org.eclipse.jgit.lib.ObjectLoader
3: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 4 1 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
0 4 2 id Lorg/eclipse/jgit/lib/AnyObjectId;
1 4 3 offset J
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
curs
id
void resolve(java.util.Set<org.eclipse.jgit.lib.ObjectId>, org.eclipse.jgit.lib.AbbreviatedObjectId, );
descriptor: (Ljava/util/Set;Lorg/eclipse/jgit/lib/AbbreviatedObjectId;I)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
aload 1
aload 2
iload 3
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.resolve:(Ljava/util/Set;Lorg/eclipse/jgit/lib/AbbreviatedObjectId;I)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 2 1 matches Ljava/util/Set<Lorg/eclipse/jgit/lib/ObjectId;>;
0 2 2 id Lorg/eclipse/jgit/lib/AbbreviatedObjectId;
0 2 3 matchLimit I
Exceptions:
throws java.io.IOException
Signature: (Ljava/util/Set<Lorg/eclipse/jgit/lib/ObjectId;>;Lorg/eclipse/jgit/lib/AbbreviatedObjectId;I)V
MethodParameters:
Name Flags
matches
id
matchLimit
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokestatic org.eclipse.jgit.internal.storage.file.WindowCache.purge:(Lorg/eclipse/jgit/internal/storage/file/PackFile;)V
1: aload 0
dup
astore 1
monitorenter
2: aload 0
aconst_null
putfield org.eclipse.jgit.internal.storage.file.PackFile.loadedIdx:Lorg/eclipse/jgit/internal/storage/file/PackIndex;
3: aload 0
aconst_null
putfield org.eclipse.jgit.internal.storage.file.PackFile.reverseIdx:Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
4: aload 1
monitorexit
5: goto 8
StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.file.PackFile
StackMap stack: java.lang.Throwable
6: aload 1
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
Exception table:
from to target type
2 5 6 any
6 7 6 any
public java.util.Iterator<org.eclipse.jgit.internal.storage.file.PackIndex$MutableEntry> iterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.iterator:()Ljava/util/Iterator;
1: areturn
2: StackMap locals:
StackMap stack: java.io.IOException
pop
3: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
Exception table:
from to target type
0 1 2 Class java.io.IOException
Signature: ()Ljava/util/Iterator<Lorg/eclipse/jgit/internal/storage/file/PackIndex$MutableEntry;>;
long getObjectCount();
descriptor: ()J
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.getObjectCount:()J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
Exceptions:
throws java.io.IOException
org.eclipse.jgit.lib.ObjectId findObjectForOffset(long);
descriptor: (J)Lorg/eclipse/jgit/lib/ObjectId;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getReverseIdx:()Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
lload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackReverseIndex.findObject:(J)Lorg/eclipse/jgit/lib/ObjectId;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 1 1 offset J
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
offset
org.eclipse.jgit.internal.storage.file.PackFileSnapshot getFileSnapshot();
descriptor: ()Lorg/eclipse/jgit/internal/storage/file/PackFileSnapshot;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fileSnapshot:Lorg/eclipse/jgit/internal/storage/file/PackFileSnapshot;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
org.eclipse.jgit.lib.AnyObjectId getPackChecksum();
descriptor: ()Lorg/eclipse/jgit/lib/AnyObjectId;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packChecksum:[B
invokestatic org.eclipse.jgit.lib.ObjectId.fromRaw:([B)Lorg/eclipse/jgit/lib/ObjectId;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
private final byte[] decompress(long, int, org.eclipse.jgit.internal.storage.file.WindowCursor);
descriptor: (JILorg/eclipse/jgit/internal/storage/file/WindowCursor;)[B
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=8, locals=6, args_size=4
start local 0 start local 1 start local 3 start local 4 0: iload 3
newarray 8
astore 5
start local 5 1: goto 4
end local 5 StackMap locals:
StackMap stack: java.lang.OutOfMemoryError
2: pop
3: aconst_null
areturn
start local 5 4: StackMap locals: byte[]
StackMap stack:
aload 4
aload 0
lload 1
aload 5
iconst_0
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.inflate:(Lorg/eclipse/jgit/internal/storage/file/PackFile;J[BZ)I
iload 3
if_icmpeq 9
5: new java.io.EOFException
dup
6: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.shortCompressedStreamAt:Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
7: lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
8: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.io.EOFException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 5
areturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 10 1 position J
0 10 3 sz I
0 10 4 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
1 2 5 dstbuf [B
4 10 5 dstbuf [B
Exception table:
from to target type
0 1 2 Class java.lang.OutOfMemoryError
Exceptions:
throws java.io.IOException, java.util.zip.DataFormatException
MethodParameters:
Name Flags
position final
sz final
curs final
void copyPackAsIs(org.eclipse.jgit.internal.storage.pack.PackOutputStream, org.eclipse.jgit.internal.storage.file.WindowCursor);
descriptor: (Lorg/eclipse/jgit/internal/storage/pack/PackOutputStream;Lorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
lconst_0
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.pin:(Lorg/eclipse/jgit/internal/storage/file/PackFile;J)V
1: aload 2
aload 0
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.length:J
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.copyPackAsIs:(Lorg/eclipse/jgit/internal/storage/file/PackFile;JLorg/eclipse/jgit/internal/storage/pack/PackOutputStream;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 3 1 out Lorg/eclipse/jgit/internal/storage/pack/PackOutputStream;
0 3 2 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
out
curs
final void copyAsIs(org.eclipse.jgit.internal.storage.pack.PackOutputStream, org.eclipse.jgit.internal.storage.file.LocalObjectToPack, boolean, org.eclipse.jgit.internal.storage.file.WindowCursor);
descriptor: (Lorg/eclipse/jgit/internal/storage/pack/PackOutputStream;Lorg/eclipse/jgit/internal/storage/file/LocalObjectToPack;ZLorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
flags: (0x0010) ACC_FINAL
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 2
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.beginCopyAsIs:(Lorg/eclipse/jgit/internal/storage/pack/ObjectToPack;)V
1: aload 0
aload 1
aload 2
iload 3
aload 4
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.copyAsIs2:(Lorg/eclipse/jgit/internal/storage/pack/PackOutputStream;Lorg/eclipse/jgit/internal/storage/file/LocalObjectToPack;ZLorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
2: goto 6
StackMap locals:
StackMap stack: java.lang.Throwable
3: astore 5
4: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.endCopyAsIs:()V
5: aload 5
athrow
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.endCopyAsIs:()V
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 Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 8 1 out Lorg/eclipse/jgit/internal/storage/pack/PackOutputStream;
0 8 2 src Lorg/eclipse/jgit/internal/storage/file/LocalObjectToPack;
0 8 3 validate Z
0 8 4 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
Exception table:
from to target type
1 3 3 any
Exceptions:
throws java.io.IOException, org.eclipse.jgit.errors.StoredObjectRepresentationNotAvailableException
MethodParameters:
Name Flags
out
src
validate
curs
private void copyAsIs2(org.eclipse.jgit.internal.storage.pack.PackOutputStream, org.eclipse.jgit.internal.storage.file.LocalObjectToPack, boolean, org.eclipse.jgit.internal.storage.file.WindowCursor);
descriptor: (Lorg/eclipse/jgit/internal/storage/pack/PackOutputStream;Lorg/eclipse/jgit/internal/storage/file/LocalObjectToPack;ZLorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=28, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iload 3
ifeq 1
new java.util.zip.CRC32
dup
invokespecial java.util.zip.CRC32.<init>:()V
goto 2
StackMap locals:
StackMap stack:
1: aconst_null
StackMap locals:
StackMap stack: java.util.zip.CRC32
2: astore 5
start local 5 3: iload 3
ifeq 4
new java.util.zip.CRC32
dup
invokespecial java.util.zip.CRC32.<init>:()V
goto 5
StackMap locals: java.util.zip.CRC32
StackMap stack:
4: aconst_null
StackMap locals:
StackMap stack: java.util.zip.CRC32
5: astore 6
start local 6 6: aload 1
invokevirtual org.eclipse.jgit.internal.storage.pack.PackOutputStream.getCopyBuffer:()[B
astore 7
start local 7 7: aload 0
aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.offset:J
aload 7
iconst_0
bipush 20
aload 4
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
8: aload 7
iconst_0
baload
sipush 255
iand
istore 8
start local 8 9: iload 8
iconst_4
ishr
bipush 7
iand
istore 9
start local 9 10: iload 8
bipush 15
iand
i2l
lstore 10
start local 10 11: iconst_4
istore 12
start local 12 12: iconst_1
istore 13
start local 13 13: goto 17
14: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.pack.PackOutputStream org.eclipse.jgit.internal.storage.file.LocalObjectToPack int org.eclipse.jgit.internal.storage.file.WindowCursor java.util.zip.CRC32 java.util.zip.CRC32 byte[] int int long int int
StackMap stack:
aload 7
iload 13
iinc 13 1
baload
sipush 255
iand
istore 8
15: lload 10
iload 8
bipush 127
iand
i2l
iload 12
lshl
ladd
lstore 10
16: iinc 12 7
17: StackMap locals:
StackMap stack:
iload 8
sipush 128
iand
ifne 14
18: iload 9
bipush 6
if_icmpne 27
19: StackMap locals:
StackMap stack:
aload 7
iload 13
iinc 13 1
baload
sipush 255
iand
istore 8
20: iload 8
sipush 128
iand
ifne 19
21: iload 3
ifeq 46
22: getstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
ifne 24
aload 5
ifnull 23
aload 6
ifnonnull 24
StackMap locals:
StackMap stack:
23: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
24: StackMap locals:
StackMap stack:
aload 5
aload 7
iconst_0
iload 13
invokevirtual java.util.zip.CRC32.update:([BII)V
25: aload 6
aload 7
iconst_0
iload 13
invokevirtual java.util.zip.CRC32.update:([BII)V
26: goto 46
StackMap locals:
StackMap stack:
27: iload 9
bipush 7
if_icmpne 41
28: iload 3
ifeq 33
29: getstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
ifne 31
aload 5
ifnull 30
aload 6
ifnonnull 31
StackMap locals:
StackMap stack:
30: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
31: StackMap locals:
StackMap stack:
aload 5
aload 7
iconst_0
iload 13
invokevirtual java.util.zip.CRC32.update:([BII)V
32: aload 6
aload 7
iconst_0
iload 13
invokevirtual java.util.zip.CRC32.update:([BII)V
33: StackMap locals:
StackMap stack:
aload 0
aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.offset:J
iload 13
i2l
ladd
aload 7
iconst_0
bipush 20
aload 4
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
34: iload 3
ifeq 39
35: getstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
ifne 37
aload 5
ifnull 36
aload 6
ifnonnull 37
StackMap locals:
StackMap stack:
36: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
37: StackMap locals:
StackMap stack:
aload 5
aload 7
iconst_0
bipush 20
invokevirtual java.util.zip.CRC32.update:([BII)V
38: aload 6
aload 7
iconst_0
bipush 20
invokevirtual java.util.zip.CRC32.update:([BII)V
39: StackMap locals:
StackMap stack:
iinc 13 20
40: goto 46
StackMap locals:
StackMap stack:
41: iload 3
ifeq 46
42: getstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
ifne 44
aload 5
ifnull 43
aload 6
ifnonnull 44
StackMap locals:
StackMap stack:
43: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
44: StackMap locals:
StackMap stack:
aload 5
aload 7
iconst_0
iload 13
invokevirtual java.util.zip.CRC32.update:([BII)V
45: aload 6
aload 7
iconst_0
iload 13
invokevirtual java.util.zip.CRC32.update:([BII)V
46: StackMap locals:
StackMap stack:
aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.offset:J
iload 13
i2l
ladd
lstore 14
start local 14 47: aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.length:J
lstore 16
start local 16 48: aload 4
aload 0
lload 14
lload 16
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.quickCopy:(Lorg/eclipse/jgit/internal/storage/file/PackFile;JJ)Lorg/eclipse/jgit/internal/storage/file/ByteArrayWindow;
astore 20
start local 20 49: iload 3
ifeq 70
aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.hasCRC32Support:()Z
ifeq 70
50: getstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
ifne 51
aload 5
ifnonnull 51
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
51: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.pack.PackOutputStream org.eclipse.jgit.internal.storage.file.LocalObjectToPack int org.eclipse.jgit.internal.storage.file.WindowCursor java.util.zip.CRC32 java.util.zip.CRC32 byte[] int int long int int long long top top org.eclipse.jgit.internal.storage.file.ByteArrayWindow
StackMap stack:
aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
aload 2
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.findCRC32:(Lorg/eclipse/jgit/lib/AnyObjectId;)J
lstore 18
start local 18 52: aload 20
ifnull 55
53: aload 20
aload 5
lload 14
lload 16
l2i
invokevirtual org.eclipse.jgit.internal.storage.file.ByteArrayWindow.crc32:(Ljava/util/zip/CRC32;JI)V
54: goto 64
55: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.pack.PackOutputStream org.eclipse.jgit.internal.storage.file.LocalObjectToPack int org.eclipse.jgit.internal.storage.file.WindowCursor java.util.zip.CRC32 java.util.zip.CRC32 byte[] int int long int int long long long org.eclipse.jgit.internal.storage.file.ByteArrayWindow
StackMap stack:
lload 14
lstore 21
start local 21 56: lload 16
lstore 23
start local 23 57: goto 63
58: StackMap locals: long long
StackMap stack:
lload 23
aload 7
arraylength
i2l
invokestatic java.lang.Math.min:(JJ)J
l2i
istore 25
start local 25 59: aload 0
lload 21
aload 7
iconst_0
iload 25
aload 4
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
60: aload 5
aload 7
iconst_0
iload 25
invokevirtual java.util.zip.CRC32.update:([BII)V
61: lload 21
iload 25
i2l
ladd
lstore 21
62: lload 23
iload 25
i2l
lsub
lstore 23
end local 25 63: StackMap locals:
StackMap stack:
lload 23
lconst_0
lcmp
ifgt 58
end local 23 end local 21 64: StackMap locals:
StackMap stack:
aload 5
invokevirtual java.util.zip.CRC32.getValue:()J
lload 18
lcmp
ifeq 114
65: aload 0
aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.offset:J
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.setCorrupt:(J)V
66: new org.eclipse.jgit.errors.CorruptObjectException
dup
67: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.objectAtHasBadZlibStream:Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
68: aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.offset:J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getPackFile:()Ljava/io/File;
aastore
69: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Ljava/lang/String;)V
athrow
end local 18 70: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.pack.PackOutputStream org.eclipse.jgit.internal.storage.file.LocalObjectToPack int org.eclipse.jgit.internal.storage.file.WindowCursor java.util.zip.CRC32 java.util.zip.CRC32 byte[] int int long int int long long top top org.eclipse.jgit.internal.storage.file.ByteArrayWindow
StackMap stack:
iload 3
ifeq 97
71: aload 4
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.inflater:()Ljava/util/zip/Inflater;
astore 21
start local 21 72: sipush 1024
newarray 8
astore 22
start local 22 73: aload 20
ifnull 76
74: aload 20
aload 21
aload 22
lload 14
lload 16
l2i
invokevirtual org.eclipse.jgit.internal.storage.file.ByteArrayWindow.check:(Ljava/util/zip/Inflater;[BJI)V
75: goto 88
76: StackMap locals: java.util.zip.Inflater byte[]
StackMap stack:
getstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
ifne 77
aload 5
ifnonnull 77
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
77: StackMap locals:
StackMap stack:
lload 14
lstore 23
start local 23 78: lload 16
lstore 25
start local 25 79: goto 87
80: StackMap locals: long long
StackMap stack:
lload 25
aload 7
arraylength
i2l
invokestatic java.lang.Math.min:(JJ)J
l2i
istore 27
start local 27 81: aload 0
lload 23
aload 7
iconst_0
iload 27
aload 4
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
82: aload 5
aload 7
iconst_0
iload 27
invokevirtual java.util.zip.CRC32.update:([BII)V
83: aload 21
aload 7
iconst_0
iload 27
invokevirtual java.util.zip.Inflater.setInput:([BII)V
84: StackMap locals: int
StackMap stack:
aload 21
aload 22
iconst_0
aload 22
arraylength
invokevirtual java.util.zip.Inflater.inflate:([BII)I
ifgt 84
85: lload 23
iload 27
i2l
ladd
lstore 23
86: lload 25
iload 27
i2l
lsub
lstore 25
end local 27 87: StackMap locals:
StackMap stack:
lload 25
lconst_0
lcmp
ifgt 80
end local 25 end local 23 88: StackMap locals:
StackMap stack:
aload 21
invokevirtual java.util.zip.Inflater.finished:()Z
ifeq 89
aload 21
invokevirtual java.util.zip.Inflater.getBytesRead:()J
lload 16
lcmp
ifeq 94
89: StackMap locals:
StackMap stack:
aload 0
aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.offset:J
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.setCorrupt:(J)V
90: new java.io.EOFException
dup
91: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.shortCompressedStreamAt:Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
92: aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.offset:J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
93: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.io.EOFException.<init>:(Ljava/lang/String;)V
athrow
94: StackMap locals:
StackMap stack:
getstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
ifne 95
aload 5
ifnonnull 95
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
95: StackMap locals:
StackMap stack:
aload 5
invokevirtual java.util.zip.CRC32.getValue:()J
lstore 18
end local 22 end local 21 start local 18 96: goto 114
end local 18 97: StackMap locals:
StackMap stack:
ldc -1
lstore 18
start local 18 98: goto 114
end local 20 end local 18 StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.pack.PackOutputStream org.eclipse.jgit.internal.storage.file.LocalObjectToPack int org.eclipse.jgit.internal.storage.file.WindowCursor java.util.zip.CRC32 java.util.zip.CRC32 byte[] int int long int int long long
StackMap stack: java.util.zip.DataFormatException
99: astore 21
start local 21 100: aload 0
aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.offset:J
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.setCorrupt:(J)V
101: new org.eclipse.jgit.errors.CorruptObjectException
dup
102: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.objectAtHasBadZlibStream:Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
103: aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.offset:J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getPackFile:()Ljava/io/File;
aastore
104: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
105: aload 21
106: invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
astore 22
start local 22 107: new org.eclipse.jgit.errors.StoredObjectRepresentationNotAvailableException
dup
aload 2
108: aload 22
109: invokespecial org.eclipse.jgit.errors.StoredObjectRepresentationNotAvailableException.<init>:(Lorg/eclipse/jgit/internal/storage/pack/ObjectToPack;Ljava/lang/Throwable;)V
athrow
end local 22 end local 21 110: StackMap locals:
StackMap stack: java.io.IOException
astore 21
start local 21 111: new org.eclipse.jgit.errors.StoredObjectRepresentationNotAvailableException
dup
aload 2
112: aload 21
113: invokespecial org.eclipse.jgit.errors.StoredObjectRepresentationNotAvailableException.<init>:(Lorg/eclipse/jgit/internal/storage/pack/ObjectToPack;Ljava/lang/Throwable;)V
athrow
end local 21 start local 18 start local 20 114: StackMap locals: long org.eclipse.jgit.internal.storage.file.ByteArrayWindow
StackMap stack:
aload 20
ifnull 118
115: aload 1
aload 2
lload 10
invokevirtual org.eclipse.jgit.internal.storage.pack.PackOutputStream.writeHeader:(Lorg/eclipse/jgit/internal/storage/pack/ObjectToPack;J)V
116: aload 20
aload 1
lload 14
lload 16
l2i
invokevirtual org.eclipse.jgit.internal.storage.file.ByteArrayWindow.write:(Lorg/eclipse/jgit/internal/storage/pack/PackOutputStream;JI)V
117: goto 151
StackMap locals:
StackMap stack:
118: lload 16
aload 7
arraylength
i2l
lcmp
ifgt 131
119: iload 3
ifne 128
120: lload 14
lstore 21
start local 21 121: lload 16
lstore 23
start local 23 122: goto 127
123: StackMap locals: long long
StackMap stack:
lload 23
aload 7
arraylength
i2l
invokestatic java.lang.Math.min:(JJ)J
l2i
istore 25
start local 25 124: aload 0
lload 21
aload 7
iconst_0
iload 25
aload 4
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
125: lload 21
iload 25
i2l
ladd
lstore 21
126: lload 23
iload 25
i2l
lsub
lstore 23
end local 25 127: StackMap locals:
StackMap stack:
lload 23
lconst_0
lcmp
ifgt 123
end local 23 end local 21 128: StackMap locals:
StackMap stack:
aload 1
aload 2
lload 10
invokevirtual org.eclipse.jgit.internal.storage.pack.PackOutputStream.writeHeader:(Lorg/eclipse/jgit/internal/storage/pack/ObjectToPack;J)V
129: aload 1
aload 7
iconst_0
lload 16
l2i
invokevirtual org.eclipse.jgit.internal.storage.pack.PackOutputStream.write:([BII)V
130: goto 151
131: StackMap locals:
StackMap stack:
aload 1
aload 2
lload 10
invokevirtual org.eclipse.jgit.internal.storage.pack.PackOutputStream.writeHeader:(Lorg/eclipse/jgit/internal/storage/pack/ObjectToPack;J)V
132: lload 14
lstore 21
start local 21 133: lload 16
lstore 23
start local 23 134: goto 143
135: StackMap locals: long long
StackMap stack:
lload 23
aload 7
arraylength
i2l
invokestatic java.lang.Math.min:(JJ)J
l2i
istore 25
start local 25 136: aload 0
lload 21
aload 7
iconst_0
iload 25
aload 4
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
137: iload 3
ifeq 140
138: getstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
ifne 139
aload 6
ifnonnull 139
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
139: StackMap locals: int
StackMap stack:
aload 6
aload 7
iconst_0
iload 25
invokevirtual java.util.zip.CRC32.update:([BII)V
140: StackMap locals:
StackMap stack:
aload 1
aload 7
iconst_0
iload 25
invokevirtual org.eclipse.jgit.internal.storage.pack.PackOutputStream.write:([BII)V
141: lload 21
iload 25
i2l
ladd
lstore 21
142: lload 23
iload 25
i2l
lsub
lstore 23
end local 25 143: StackMap locals:
StackMap stack:
lload 23
lconst_0
lcmp
ifgt 135
144: iload 3
ifeq 151
145: getstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
ifne 146
aload 6
ifnonnull 146
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
146: StackMap locals:
StackMap stack:
aload 6
invokevirtual java.util.zip.CRC32.getValue:()J
lload 18
lcmp
ifeq 151
147: new org.eclipse.jgit.errors.CorruptObjectException
dup
148: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.objectAtHasBadZlibStream:Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
149: aload 2
getfield org.eclipse.jgit.internal.storage.file.LocalObjectToPack.offset:J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getPackFile:()Ljava/io/File;
aastore
150: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Ljava/lang/String;)V
athrow
end local 23 end local 21 151: StackMap locals:
StackMap stack:
return
end local 20 end local 18 end local 16 end local 14 end local 13 end local 12 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 152 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 152 1 out Lorg/eclipse/jgit/internal/storage/pack/PackOutputStream;
0 152 2 src Lorg/eclipse/jgit/internal/storage/file/LocalObjectToPack;
0 152 3 validate Z
0 152 4 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
3 152 5 crc1 Ljava/util/zip/CRC32;
6 152 6 crc2 Ljava/util/zip/CRC32;
7 152 7 buf [B
9 152 8 c I
10 152 9 typeCode I
11 152 10 inflatedLength J
12 152 12 shift I
13 152 13 headerCnt I
47 152 14 dataOffset J
48 152 16 dataLength J
52 70 18 expectedCRC J
96 97 18 expectedCRC J
98 99 18 expectedCRC J
114 152 18 expectedCRC J
49 99 20 quickCopy Lorg/eclipse/jgit/internal/storage/file/ByteArrayWindow;
114 152 20 quickCopy Lorg/eclipse/jgit/internal/storage/file/ByteArrayWindow;
56 64 21 pos J
57 64 23 cnt J
59 63 25 n I
72 96 21 inf Ljava/util/zip/Inflater;
73 96 22 tmp [B
78 88 23 pos J
79 88 25 cnt J
81 87 27 n I
100 110 21 dataFormat Ljava/util/zip/DataFormatException;
107 110 22 corruptObject Lorg/eclipse/jgit/errors/CorruptObjectException;
111 114 21 ioError Ljava/io/IOException;
121 128 21 pos J
122 128 23 cnt J
124 127 25 n I
133 151 21 pos J
134 151 23 cnt J
136 143 25 n I
Exception table:
from to target type
48 98 99 Class java.util.zip.DataFormatException
48 98 110 Class java.io.IOException
Exceptions:
throws java.io.IOException, org.eclipse.jgit.errors.StoredObjectRepresentationNotAvailableException
MethodParameters:
Name Flags
out
src
validate
curs
boolean invalid();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.invalid:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
void setInvalid();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
putfield org.eclipse.jgit.internal.storage.file.PackFile.invalid:Z
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
int incrementTransientErrorCount();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.transientErrorCount:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
void resetTransientErrorCount();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.transientErrorCount:Ljava/util/concurrent/atomic/AtomicInteger;
iconst_0
invokevirtual java.util.concurrent.atomic.AtomicInteger.set:(I)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
private void readFully(long, byte[], int, int, org.eclipse.jgit.internal.storage.file.WindowCursor);
descriptor: (J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=7, args_size=6
start local 0 start local 1 start local 3 start local 4 start local 5 start local 6 0: aload 6
aload 0
lload 1
aload 3
iload 4
iload 5
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.copy:(Lorg/eclipse/jgit/internal/storage/file/PackFile;J[BII)I
iload 5
if_icmpeq 2
1: new java.io.EOFException
dup
invokespecial java.io.EOFException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 3 1 position J
0 3 3 dstbuf [B
0 3 4 dstoff I
0 3 5 cnt I
0 3 6 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
position final
dstbuf final
dstoff
cnt final
curs final
private synchronized void beginCopyAsIs(org.eclipse.jgit.internal.storage.pack.ObjectToPack);
descriptor: (Lorg/eclipse/jgit/internal/storage/pack/ObjectToPack;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
dup
getfield org.eclipse.jgit.internal.storage.file.PackFile.activeCopyRawData:I
iconst_1
iadd
dup_x1
putfield org.eclipse.jgit.internal.storage.file.PackFile.activeCopyRawData:I
iconst_1
if_icmpne 7
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.activeWindows:I
ifne 7
1: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.doOpen:()V
2: goto 7
StackMap locals:
StackMap stack: java.io.IOException
3: astore 2
start local 2 4: new org.eclipse.jgit.errors.StoredObjectRepresentationNotAvailableException
dup
aload 1
5: aload 2
6: invokespecial org.eclipse.jgit.errors.StoredObjectRepresentationNotAvailableException.<init>:(Lorg/eclipse/jgit/internal/storage/pack/ObjectToPack;Ljava/lang/Throwable;)V
athrow
end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 8 1 otp Lorg/eclipse/jgit/internal/storage/pack/ObjectToPack;
4 7 2 thisPackNotValid Ljava/io/IOException;
Exception table:
from to target type
1 2 3 Class java.io.IOException
Exceptions:
throws org.eclipse.jgit.errors.StoredObjectRepresentationNotAvailableException
MethodParameters:
Name Flags
otp
private synchronized void endCopyAsIs();
descriptor: ()V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
dup
getfield org.eclipse.jgit.internal.storage.file.PackFile.activeCopyRawData:I
iconst_1
isub
dup_x1
putfield org.eclipse.jgit.internal.storage.file.PackFile.activeCopyRawData:I
ifne 2
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.activeWindows:I
ifne 2
1: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.doClose:()V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
synchronized boolean beginWindowCache();
descriptor: ()Z
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
dup
getfield org.eclipse.jgit.internal.storage.file.PackFile.activeWindows:I
iconst_1
iadd
dup_x1
putfield org.eclipse.jgit.internal.storage.file.PackFile.activeWindows:I
iconst_1
if_icmpne 4
1: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.activeCopyRawData:I
ifne 3
2: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.doOpen:()V
3: StackMap locals:
StackMap stack:
iconst_1
ireturn
4: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
Exceptions:
throws java.io.IOException
synchronized boolean endWindowCache();
descriptor: ()Z
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
dup
getfield org.eclipse.jgit.internal.storage.file.PackFile.activeWindows:I
iconst_1
isub
dup_x1
putfield org.eclipse.jgit.internal.storage.file.PackFile.activeWindows:I
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: istore 1
start local 1 3: iload 1
ifeq 5
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.activeCopyRawData:I
ifne 5
4: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.doClose:()V
5: StackMap locals: int
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
3 6 1 r Z
private void doOpen();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.invalid:Z
ifeq 3
1: aload 0
iconst_1
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.invalidatingCause:Ljava/lang/Exception;
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.openFail:(ZLjava/lang/Exception;)V
2: new org.eclipse.jgit.errors.PackInvalidException
dup
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.invalidatingCause:Ljava/lang/Exception;
invokespecial org.eclipse.jgit.errors.PackInvalidException.<init>:(Ljava/io/File;Ljava/lang/Throwable;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.readLock:Ljava/lang/Object;
dup
astore 1
monitorenter
4: aload 0
new java.io.RandomAccessFile
dup
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
ldc "r"
invokespecial java.io.RandomAccessFile.<init>:(Ljava/io/File;Ljava/lang/String;)V
putfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
5: aload 0
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
invokevirtual java.io.RandomAccessFile.length:()J
putfield org.eclipse.jgit.internal.storage.file.PackFile.length:J
6: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.onOpenPack:()V
7: aload 1
monitorexit
8: goto 25
StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile java.lang.Object
StackMap stack: java.lang.Throwable
9: aload 1
monitorexit
10: athrow
11: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile
StackMap stack: java.io.InterruptedIOException
astore 1
start local 1 12: aload 0
iconst_0
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.openFail:(ZLjava/lang/Exception;)V
13: aload 1
athrow
end local 1 14: StackMap locals:
StackMap stack: java.io.FileNotFoundException
astore 1
start local 1 15: aload 0
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
invokevirtual java.io.File.exists:()Z
ifeq 16
iconst_0
goto 17
StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile java.io.FileNotFoundException
StackMap stack: org.eclipse.jgit.internal.storage.file.PackFile
16: iconst_1
StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile java.io.FileNotFoundException
StackMap stack: org.eclipse.jgit.internal.storage.file.PackFile int
17: aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.openFail:(ZLjava/lang/Exception;)V
18: aload 1
athrow
end local 1 19: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile
StackMap stack: java.io.IOException
astore 1
start local 1 20: aload 0
iconst_1
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.openFail:(ZLjava/lang/Exception;)V
21: aload 1
athrow
end local 1 22: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 23: aload 0
iconst_0
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.openFail:(ZLjava/lang/Exception;)V
24: aload 1
athrow
end local 1 25: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
12 14 1 e Ljava/io/InterruptedIOException;
15 19 1 fn Ljava/io/FileNotFoundException;
20 22 1 pe Ljava/io/IOException;
23 25 1 ge Ljava/lang/Exception;
Exception table:
from to target type
4 8 9 any
9 10 9 any
3 11 11 Class java.io.InterruptedIOException
3 11 14 Class java.io.FileNotFoundException
3 11 19 Class java.io.EOFException
3 11 19 Class java.nio.file.AccessDeniedException
3 11 19 Class java.nio.file.NoSuchFileException
3 11 19 Class org.eclipse.jgit.errors.CorruptObjectException
3 11 19 Class org.eclipse.jgit.errors.NoPackSignatureException
3 11 19 Class org.eclipse.jgit.errors.PackMismatchException
3 11 19 Class org.eclipse.jgit.errors.UnpackException
3 11 19 Class org.eclipse.jgit.errors.UnsupportedPackIndexVersionException
3 11 19 Class org.eclipse.jgit.errors.UnsupportedPackVersionException
3 11 22 Class java.io.IOException
3 11 22 Class java.lang.RuntimeException
Exceptions:
throws java.io.IOException
private void openFail(boolean, java.lang.Exception);
descriptor: (ZLjava/lang/Exception;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iconst_0
putfield org.eclipse.jgit.internal.storage.file.PackFile.activeWindows:I
1: aload 0
iconst_0
putfield org.eclipse.jgit.internal.storage.file.PackFile.activeCopyRawData:I
2: aload 0
iload 1
putfield org.eclipse.jgit.internal.storage.file.PackFile.invalid:Z
3: aload 0
aload 2
putfield org.eclipse.jgit.internal.storage.file.PackFile.invalidatingCause:Ljava/lang/Exception;
4: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.doClose:()V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 6 1 invalidate Z
0 6 2 cause Ljava/lang/Exception;
MethodParameters:
Name Flags
invalidate
cause
private void doClose();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.readLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
ifnull 6
2: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
invokevirtual java.io.RandomAccessFile.close:()V
3: goto 5
StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile java.lang.Object
StackMap stack: java.io.IOException
4: pop
5: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
6: StackMap locals:
StackMap stack:
aload 1
monitorexit
7: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
8: aload 1
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
Exception table:
from to target type
2 3 4 Class java.io.IOException
1 7 8 any
8 9 8 any
org.eclipse.jgit.internal.storage.file.ByteArrayWindow read(long, int);
descriptor: (JI)Lorg/eclipse/jgit/internal/storage/file/ByteArrayWindow;
flags: (0x0000)
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.readLock:Ljava/lang/Object;
dup
astore 4
monitorenter
1: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.invalid:Z
ifne 2
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
ifnonnull 3
2: StackMap locals: java.lang.Object
StackMap stack:
new org.eclipse.jgit.errors.PackInvalidException
dup
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.invalidatingCause:Ljava/lang/Exception;
invokespecial org.eclipse.jgit.errors.PackInvalidException.<init>:(Ljava/io/File;Ljava/lang/Throwable;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.length:J
lload 1
iload 3
i2l
ladd
lcmp
ifge 5
4: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.length:J
lload 1
lsub
l2i
istore 3
5: StackMap locals:
StackMap stack:
iload 3
newarray 8
astore 5
start local 5 6: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
lload 1
invokevirtual java.io.RandomAccessFile.seek:(J)V
7: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
aload 5
iconst_0
iload 3
invokevirtual java.io.RandomAccessFile.readFully:([BII)V
8: new org.eclipse.jgit.internal.storage.file.ByteArrayWindow
dup
aload 0
lload 1
aload 5
invokespecial org.eclipse.jgit.internal.storage.file.ByteArrayWindow.<init>:(Lorg/eclipse/jgit/internal/storage/file/PackFile;J[B)V
aload 4
monitorexit
9: areturn
end local 5 10: StackMap locals:
StackMap stack: java.lang.Throwable
aload 4
monitorexit
11: athrow
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 12 1 pos J
0 12 3 size I
6 10 5 buf [B
Exception table:
from to target type
1 9 10 any
10 11 10 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pos
size
org.eclipse.jgit.internal.storage.file.ByteWindow mmap(long, int);
descriptor: (JI)Lorg/eclipse/jgit/internal/storage/file/ByteWindow;
flags: (0x0000)
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.readLock:Ljava/lang/Object;
dup
astore 4
monitorenter
1: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.length:J
lload 1
iload 3
i2l
ladd
lcmp
ifge 3
2: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.length:J
lload 1
lsub
l2i
istore 3
3: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
invokevirtual java.io.RandomAccessFile.getChannel:()Ljava/nio/channels/FileChannel;
getstatic java.nio.channels.FileChannel$MapMode.READ_ONLY:Ljava/nio/channels/FileChannel$MapMode;
lload 1
iload 3
i2l
invokevirtual java.nio.channels.FileChannel.map:(Ljava/nio/channels/FileChannel$MapMode;JJ)Ljava/nio/MappedByteBuffer;
astore 5
start local 5 4: goto 9
end local 5 StackMap locals:
StackMap stack: java.io.IOException
5: pop
6: invokestatic java.lang.System.gc:()V
7: invokestatic java.lang.System.runFinalization:()V
8: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
invokevirtual java.io.RandomAccessFile.getChannel:()Ljava/nio/channels/FileChannel;
getstatic java.nio.channels.FileChannel$MapMode.READ_ONLY:Ljava/nio/channels/FileChannel$MapMode;
lload 1
iload 3
i2l
invokevirtual java.nio.channels.FileChannel.map:(Ljava/nio/channels/FileChannel$MapMode;JJ)Ljava/nio/MappedByteBuffer;
astore 5
start local 5 9: StackMap locals: java.nio.MappedByteBuffer
StackMap stack:
aload 5
invokevirtual java.nio.MappedByteBuffer.hasArray:()Z
ifeq 12
10: new org.eclipse.jgit.internal.storage.file.ByteArrayWindow
dup
aload 0
lload 1
aload 5
invokevirtual java.nio.MappedByteBuffer.array:()[B
invokespecial org.eclipse.jgit.internal.storage.file.ByteArrayWindow.<init>:(Lorg/eclipse/jgit/internal/storage/file/PackFile;J[B)V
aload 4
monitorexit
11: areturn
12: StackMap locals:
StackMap stack:
new org.eclipse.jgit.internal.storage.file.ByteBufferWindow
dup
aload 0
lload 1
aload 5
invokespecial org.eclipse.jgit.internal.storage.file.ByteBufferWindow.<init>:(Lorg/eclipse/jgit/internal/storage/file/PackFile;JLjava/nio/ByteBuffer;)V
aload 4
monitorexit
13: areturn
end local 5 14: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile long int java.lang.Object
StackMap stack: java.lang.Throwable
aload 4
monitorexit
15: athrow
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 16 1 pos J
0 16 3 size I
4 5 5 map Ljava/nio/MappedByteBuffer;
9 14 5 map Ljava/nio/MappedByteBuffer;
Exception table:
from to target type
3 4 5 Class java.io.IOException
1 11 14 any
12 13 14 any
14 15 14 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pos
size
private void onOpenPack();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=7, args_size=1
start local 0 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
astore 1
start local 1 1: bipush 20
newarray 8
astore 2
start local 2 2: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
lconst_0
invokevirtual java.io.RandomAccessFile.seek:(J)V
3: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
aload 2
iconst_0
bipush 12
invokevirtual java.io.RandomAccessFile.readFully:([BII)V
4: aload 2
iconst_0
getstatic org.eclipse.jgit.lib.Constants.PACK_SIGNATURE:[B
invokestatic org.eclipse.jgit.util.RawParseUtils.match:([BI[B)I
iconst_4
if_icmpeq 6
5: new org.eclipse.jgit.errors.NoPackSignatureException
dup
invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.notAPACKFile:Ljava/lang/String;
invokespecial org.eclipse.jgit.errors.NoPackSignatureException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: org.eclipse.jgit.internal.storage.file.PackIndex byte[]
StackMap stack:
aload 2
iconst_4
invokestatic org.eclipse.jgit.util.NB.decodeUInt32:([BI)J
lstore 3
start local 3 7: aload 2
bipush 8
invokestatic org.eclipse.jgit.util.NB.decodeUInt32:([BI)J
lstore 5
start local 5 8: lload 3
ldc 2
lcmp
ifeq 10
lload 3
ldc 3
lcmp
ifeq 10
9: new org.eclipse.jgit.errors.UnsupportedPackVersionException
dup
lload 3
invokespecial org.eclipse.jgit.errors.UnsupportedPackVersionException.<init>:(J)V
athrow
10: StackMap locals: long long
StackMap stack:
lload 5
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.getObjectCount:()J
lcmp
ifeq 16
11: new org.eclipse.jgit.errors.PackMismatchException
dup
12: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.packObjectCountMismatch:Ljava/lang/String;
iconst_3
anewarray java.lang.Object
dup
iconst_0
13: lload 5
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.getObjectCount:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_2
14: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getPackFile:()Ljava/io/File;
aastore
15: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.eclipse.jgit.errors.PackMismatchException.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.length:J
ldc 20
lsub
invokevirtual java.io.RandomAccessFile.seek:(J)V
17: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.fd:Ljava/io/RandomAccessFile;
aload 2
iconst_0
bipush 20
invokevirtual java.io.RandomAccessFile.readFully:([BII)V
18: aload 2
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packChecksum:[B
invokestatic java.util.Arrays.equals:([B[B)Z
ifne 25
19: new org.eclipse.jgit.errors.PackMismatchException
dup
20: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.packChecksumMismatch:Ljava/lang/String;
iconst_3
anewarray java.lang.Object
dup
iconst_0
21: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getPackFile:()Ljava/io/File;
aastore
dup
iconst_1
22: aload 2
invokestatic org.eclipse.jgit.lib.ObjectId.fromRaw:([B)Lorg/eclipse/jgit/lib/ObjectId;
invokevirtual org.eclipse.jgit.lib.ObjectId.name:()Ljava/lang/String;
aastore
dup
iconst_2
23: aload 1
getfield org.eclipse.jgit.internal.storage.file.PackIndex.packChecksum:[B
invokestatic org.eclipse.jgit.lib.ObjectId.fromRaw:([B)Lorg/eclipse/jgit/lib/ObjectId;
invokevirtual org.eclipse.jgit.lib.ObjectId.name:()Ljava/lang/String;
aastore
24: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.eclipse.jgit.errors.PackMismatchException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
return
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
1 26 1 idx Lorg/eclipse/jgit/internal/storage/file/PackIndex;
2 26 2 buf [B
7 26 3 vers J
8 26 5 packCnt J
Exceptions:
throws java.io.IOException
org.eclipse.jgit.lib.ObjectLoader load(org.eclipse.jgit.internal.storage.file.WindowCursor, long);
descriptor: (Lorg/eclipse/jgit/internal/storage/file/WindowCursor;J)Lorg/eclipse/jgit/lib/ObjectLoader;
flags: (0x0000)
Code:
stack=10, locals=18, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.eclipse.jgit.internal.storage.file.WindowCursor.tempId:[B
astore 4
start local 4 1: aconst_null
astore 5
start local 5 2: aconst_null
astore 6
start local 6 3: iconst_m1
istore 7
start local 7 4: iconst_0
istore 8
start local 8 5: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.file.WindowCursor long byte[] org.eclipse.jgit.internal.storage.file.PackFile$Delta byte[] int int
StackMap stack:
aload 0
lload 2
aload 4
iconst_0
bipush 20
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
6: aload 4
iconst_0
baload
sipush 255
iand
istore 9
start local 9 7: iload 9
iconst_4
ishr
bipush 7
iand
istore 10
start local 10 8: iload 9
bipush 15
iand
i2l
lstore 11
start local 11 9: iconst_4
istore 13
start local 13 10: iconst_1
istore 14
start local 14 11: goto 15
12: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.file.WindowCursor long byte[] org.eclipse.jgit.internal.storage.file.PackFile$Delta byte[] int int int int long int int
StackMap stack:
aload 4
iload 14
iinc 14 1
baload
sipush 255
iand
istore 9
13: lload 11
iload 9
bipush 127
iand
i2l
iload 13
lshl
ladd
lstore 11
14: iinc 13 7
15: StackMap locals:
StackMap stack:
iload 9
sipush 128
iand
ifne 12
16: iload 10
tableswitch { // 1 - 7
1: 17
2: 17
3: 17
4: 17
5: 62
6: 29
7: 49
default: 62
}
17: StackMap locals:
StackMap stack:
aload 5
ifnonnull 18
lload 11
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.getStreamFileThreshold:()I
i2l
lcmp
ifge 19
18: StackMap locals:
StackMap stack:
aload 0
lload 2
iload 14
i2l
ladd
lload 11
l2i
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.decompress:(JILorg/eclipse/jgit/internal/storage/file/WindowCursor;)[B
astore 6
19: StackMap locals:
StackMap stack:
aload 5
ifnull 22
20: iload 10
istore 7
21: goto 66
22: StackMap locals:
StackMap stack:
aload 6
ifnull 25
23: new org.eclipse.jgit.lib.ObjectLoader$SmallObject
dup
iload 10
aload 6
invokespecial org.eclipse.jgit.lib.ObjectLoader$SmallObject.<init>:(I[B)V
24: areturn
25: StackMap locals:
StackMap stack:
new org.eclipse.jgit.internal.storage.file.LargePackedWholeObject
dup
iload 10
lload 11
lload 2
iload 14
26: aload 0
aload 1
getfield org.eclipse.jgit.internal.storage.file.WindowCursor.db:Lorg/eclipse/jgit/internal/storage/file/FileObjectDatabase;
27: invokespecial org.eclipse.jgit.internal.storage.file.LargePackedWholeObject.<init>:(IJJILorg/eclipse/jgit/internal/storage/file/PackFile;Lorg/eclipse/jgit/internal/storage/file/FileObjectDatabase;)V
28: areturn
29: StackMap locals:
StackMap stack:
aload 4
iload 14
iinc 14 1
baload
sipush 255
iand
istore 9
30: iload 9
bipush 127
iand
i2l
lstore 15
start local 15 31: goto 36
32: StackMap locals: long
StackMap stack:
lload 15
lconst_1
ladd
lstore 15
33: aload 4
iload 14
iinc 14 1
baload
sipush 255
iand
istore 9
34: lload 15
bipush 7
lshl
lstore 15
35: lload 15
iload 9
bipush 127
iand
i2l
ladd
lstore 15
36: StackMap locals:
StackMap stack:
iload 9
sipush 128
iand
ifne 32
37: lload 2
lload 15
lsub
lstore 15
38: new org.eclipse.jgit.internal.storage.file.PackFile$Delta
dup
aload 5
lload 2
lload 11
l2i
iload 14
lload 15
invokespecial org.eclipse.jgit.internal.storage.file.PackFile$Delta.<init>:(Lorg/eclipse/jgit/internal/storage/file/PackFile$Delta;JIIJ)V
astore 5
39: lload 11
aload 5
getfield org.eclipse.jgit.internal.storage.file.PackFile$Delta.deltaSize:I
i2l
lcmp
ifeq 41
40: goto 66
41: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.getDeltaBaseCache:()Lorg/eclipse/jgit/internal/storage/file/DeltaBaseCache;
aload 0
lload 15
invokevirtual org.eclipse.jgit.internal.storage.file.DeltaBaseCache.get:(Lorg/eclipse/jgit/internal/storage/file/PackFile;J)Lorg/eclipse/jgit/internal/storage/file/DeltaBaseCache$Entry;
astore 17
start local 17 42: aload 17
ifnull 47
43: aload 17
getfield org.eclipse.jgit.internal.storage.file.DeltaBaseCache$Entry.type:I
istore 7
44: aload 17
getfield org.eclipse.jgit.internal.storage.file.DeltaBaseCache$Entry.data:[B
astore 6
45: iconst_1
istore 8
46: goto 66
47: StackMap locals: org.eclipse.jgit.internal.storage.file.DeltaBaseCache$Entry
StackMap stack:
lload 15
lstore 2
48: goto 5
end local 17 end local 15 49: StackMap locals:
StackMap stack:
aload 0
lload 2
iload 14
i2l
ladd
aload 4
iconst_0
bipush 20
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
50: aload 0
aload 4
invokestatic org.eclipse.jgit.lib.ObjectId.fromRaw:([B)Lorg/eclipse/jgit/lib/ObjectId;
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.findDeltaBase:(Lorg/eclipse/jgit/lib/ObjectId;)J
lstore 15
start local 15 51: new org.eclipse.jgit.internal.storage.file.PackFile$Delta
dup
aload 5
lload 2
lload 11
l2i
iload 14
bipush 20
iadd
lload 15
invokespecial org.eclipse.jgit.internal.storage.file.PackFile$Delta.<init>:(Lorg/eclipse/jgit/internal/storage/file/PackFile$Delta;JIIJ)V
astore 5
52: lload 11
aload 5
getfield org.eclipse.jgit.internal.storage.file.PackFile$Delta.deltaSize:I
i2l
lcmp
ifeq 54
53: goto 66
54: StackMap locals: long
StackMap stack:
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.getDeltaBaseCache:()Lorg/eclipse/jgit/internal/storage/file/DeltaBaseCache;
aload 0
lload 15
invokevirtual org.eclipse.jgit.internal.storage.file.DeltaBaseCache.get:(Lorg/eclipse/jgit/internal/storage/file/PackFile;J)Lorg/eclipse/jgit/internal/storage/file/DeltaBaseCache$Entry;
astore 17
start local 17 55: aload 17
ifnull 60
56: aload 17
getfield org.eclipse.jgit.internal.storage.file.DeltaBaseCache$Entry.type:I
istore 7
57: aload 17
getfield org.eclipse.jgit.internal.storage.file.DeltaBaseCache$Entry.data:[B
astore 6
58: iconst_1
istore 8
59: goto 66
60: StackMap locals: org.eclipse.jgit.internal.storage.file.DeltaBaseCache$Entry
StackMap stack:
lload 15
lstore 2
61: goto 5
end local 17 end local 15 62: StackMap locals:
StackMap stack:
new java.io.IOException
dup
63: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.unknownObjectType:Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
64: iload 10
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
65: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 14 end local 13 end local 11 end local 10 end local 9 66: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.file.WindowCursor long byte[] org.eclipse.jgit.internal.storage.file.PackFile$Delta byte[] int int
StackMap stack:
aload 6
ifnonnull 68
67: new java.io.IOException
dup
invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.inMemoryBufferLimitExceeded:Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
68: StackMap locals:
StackMap stack:
getstatic org.eclipse.jgit.internal.storage.file.PackFile.$assertionsDisabled:Z
ifne 69
aload 5
ifnonnull 69
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
69: StackMap locals:
StackMap stack:
iload 8
ifeq 71
70: iconst_0
istore 8
goto 73
71: StackMap locals:
StackMap stack:
aload 5
getfield org.eclipse.jgit.internal.storage.file.PackFile$Delta.next:Lorg/eclipse/jgit/internal/storage/file/PackFile$Delta;
ifnonnull 73
72: aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.getDeltaBaseCache:()Lorg/eclipse/jgit/internal/storage/file/DeltaBaseCache;
aload 0
aload 5
getfield org.eclipse.jgit.internal.storage.file.PackFile$Delta.basePos:J
aload 6
iload 7
invokevirtual org.eclipse.jgit.internal.storage.file.DeltaBaseCache.store:(Lorg/eclipse/jgit/internal/storage/file/PackFile;J[BI)V
73: StackMap locals:
StackMap stack:
aload 5
getfield org.eclipse.jgit.internal.storage.file.PackFile$Delta.deltaPos:J
lstore 2
74: aload 0
lload 2
aload 5
getfield org.eclipse.jgit.internal.storage.file.PackFile$Delta.hdrLen:I
i2l
ladd
75: aload 5
getfield org.eclipse.jgit.internal.storage.file.PackFile$Delta.deltaSize:I
aload 1
76: invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.decompress:(JILorg/eclipse/jgit/internal/storage/file/WindowCursor;)[B
astore 9
start local 9 77: aload 9
ifnonnull 80
78: aconst_null
astore 6
79: new org.eclipse.jgit.errors.LargeObjectException$OutOfMemory
dup
new java.lang.OutOfMemoryError
dup
invokespecial java.lang.OutOfMemoryError.<init>:()V
invokespecial org.eclipse.jgit.errors.LargeObjectException$OutOfMemory.<init>:(Ljava/lang/OutOfMemoryError;)V
athrow
80: StackMap locals: byte[]
StackMap stack:
aload 9
invokestatic org.eclipse.jgit.internal.storage.pack.BinaryDelta.getResultSize:([B)J
lstore 10
start local 10 81: ldc 2147483647
lload 10
lcmp
ifgt 83
82: new org.eclipse.jgit.errors.LargeObjectException$ExceedsByteArrayLimit
dup
invokespecial org.eclipse.jgit.errors.LargeObjectException$ExceedsByteArrayLimit.<init>:()V
athrow
83: StackMap locals: long
StackMap stack:
lload 10
l2i
newarray 8
astore 12
start local 12 84: goto 88
end local 12 StackMap locals:
StackMap stack: java.lang.OutOfMemoryError
85: astore 13
start local 13 86: aconst_null
astore 6
87: new org.eclipse.jgit.errors.LargeObjectException$OutOfMemory
dup
aload 13
invokespecial org.eclipse.jgit.errors.LargeObjectException$OutOfMemory.<init>:(Ljava/lang/OutOfMemoryError;)V
athrow
end local 13 start local 12 88: StackMap locals: byte[]
StackMap stack:
aload 6
aload 9
aload 12
invokestatic org.eclipse.jgit.internal.storage.pack.BinaryDelta.apply:([B[B[B)[B
pop
89: aload 12
astore 6
90: aload 5
getfield org.eclipse.jgit.internal.storage.file.PackFile$Delta.next:Lorg/eclipse/jgit/internal/storage/file/PackFile$Delta;
astore 5
end local 12 end local 10 end local 9 91: aload 5
ifnonnull 69
92: new org.eclipse.jgit.lib.ObjectLoader$SmallObject
dup
iload 7
aload 6
invokespecial org.eclipse.jgit.lib.ObjectLoader$SmallObject.<init>:(I[B)V
93: areturn
end local 8 end local 7 end local 6 end local 5 end local 4 94: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.file.WindowCursor long
StackMap stack: java.util.zip.DataFormatException
astore 4
start local 4 95: new org.eclipse.jgit.errors.CorruptObjectException
dup
96: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.objectAtHasBadZlibStream:Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
97: lload 2
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getPackFile:()Ljava/io/File;
aastore
98: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
99: aload 4
100: invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 101 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 101 1 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
0 101 2 pos J
1 94 4 ib [B
2 94 5 delta Lorg/eclipse/jgit/internal/storage/file/PackFile$Delta;
3 94 6 data [B
4 94 7 type I
5 94 8 cached Z
7 66 9 c I
8 66 10 typeCode I
9 66 11 sz J
10 66 13 shift I
11 66 14 p I
31 49 15 base J
42 49 17 e Lorg/eclipse/jgit/internal/storage/file/DeltaBaseCache$Entry;
51 62 15 base J
55 62 17 e Lorg/eclipse/jgit/internal/storage/file/DeltaBaseCache$Entry;
77 91 9 cmds [B
81 91 10 sz J
84 85 12 result [B
88 91 12 result [B
86 88 13 tooBig Ljava/lang/OutOfMemoryError;
95 101 4 dfe Ljava/util/zip/DataFormatException;
Exception table:
from to target type
83 84 85 Class java.lang.OutOfMemoryError
0 24 94 Class java.util.zip.DataFormatException
25 28 94 Class java.util.zip.DataFormatException
29 93 94 Class java.util.zip.DataFormatException
Exceptions:
throws java.io.IOException, org.eclipse.jgit.errors.LargeObjectException
MethodParameters:
Name Flags
curs
pos
private long findDeltaBase(org.eclipse.jgit.lib.ObjectId);
descriptor: (Lorg/eclipse/jgit/lib/ObjectId;)J
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.findOffset:(Lorg/eclipse/jgit/lib/AnyObjectId;)J
lstore 2
start local 2 1: lload 2
lconst_0
lcmp
ifge 5
2: new org.eclipse.jgit.errors.MissingObjectException
dup
aload 1
3: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.missingDeltaBase:Ljava/lang/String;
4: invokespecial org.eclipse.jgit.errors.MissingObjectException.<init>:(Lorg/eclipse/jgit/lib/ObjectId;Ljava/lang/String;)V
athrow
5: StackMap locals: long
StackMap stack:
lload 2
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 6 1 baseId Lorg/eclipse/jgit/lib/ObjectId;
1 6 2 ofs J
Exceptions:
throws java.io.IOException, org.eclipse.jgit.errors.MissingObjectException
MethodParameters:
Name Flags
baseId
byte[] (org.eclipse.jgit.internal.storage.file.WindowCursor, long);
descriptor: (Lorg/eclipse/jgit/internal/storage/file/WindowCursor;J)[B
flags: (0x0000)
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: bipush 18
newarray 8
astore 4
start local 4 1: aload 1
aload 0
lload 2
aload 4
iconst_1
invokevirtual org.eclipse.jgit.internal.storage.file.WindowCursor.inflate:(Lorg/eclipse/jgit/internal/storage/file/PackFile;J[BZ)I
pop
2: aload 4
areturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 3 1 wc Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
0 3 2 pos J
1 3 4 hdr [B
Exceptions:
throws java.io.IOException, java.util.zip.DataFormatException
MethodParameters:
Name Flags
wc
pos
int getObjectType(org.eclipse.jgit.internal.storage.file.WindowCursor, long);
descriptor: (Lorg/eclipse/jgit/internal/storage/file/WindowCursor;J)I
flags: (0x0000)
Code:
stack=7, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.eclipse.jgit.internal.storage.file.WindowCursor.tempId:[B
astore 4
start local 4 1: StackMap locals: byte[]
StackMap stack:
aload 0
lload 2
aload 4
iconst_0
bipush 20
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
2: aload 4
iconst_0
baload
sipush 255
iand
istore 5
start local 5 3: iload 5
iconst_4
ishr
bipush 7
iand
istore 6
start local 6 4: iload 6
tableswitch { // 1 - 7
1: 5
2: 5
3: 5
4: 5
5: 27
6: 6
7: 20
default: 27
}
5: StackMap locals: int int
StackMap stack:
iload 6
ireturn
6: StackMap locals:
StackMap stack:
iconst_1
istore 7
start local 7 7: goto 9
8: StackMap locals: int
StackMap stack:
aload 4
iload 7
iinc 7 1
baload
sipush 255
iand
istore 5
9: StackMap locals:
StackMap stack:
iload 5
sipush 128
iand
ifne 8
10: aload 4
iload 7
iinc 7 1
baload
sipush 255
iand
istore 5
11: iload 5
bipush 127
iand
i2l
lstore 8
start local 8 12: goto 17
13: StackMap locals: long
StackMap stack:
lload 8
lconst_1
ladd
lstore 8
14: aload 4
iload 7
iinc 7 1
baload
sipush 255
iand
istore 5
15: lload 8
bipush 7
lshl
lstore 8
16: lload 8
iload 5
bipush 127
iand
i2l
ladd
lstore 8
17: StackMap locals:
StackMap stack:
iload 5
sipush 128
iand
ifne 13
18: lload 2
lload 8
lsub
lstore 2
19: goto 1
end local 8 end local 7 20: StackMap locals:
StackMap stack:
iconst_1
istore 7
start local 7 21: goto 23
22: StackMap locals: int
StackMap stack:
aload 4
iload 7
iinc 7 1
baload
sipush 255
iand
istore 5
23: StackMap locals:
StackMap stack:
iload 5
sipush 128
iand
ifne 22
24: aload 0
lload 2
iload 7
i2l
ladd
aload 4
iconst_0
bipush 20
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
25: aload 0
aload 4
invokestatic org.eclipse.jgit.lib.ObjectId.fromRaw:([B)Lorg/eclipse/jgit/lib/ObjectId;
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.findDeltaBase:(Lorg/eclipse/jgit/lib/ObjectId;)J
lstore 2
26: goto 1
end local 7 27: StackMap locals:
StackMap stack:
new java.io.IOException
dup
28: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.unknownObjectType:Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
29: iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
30: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
31: invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
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 32 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 32 1 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
0 32 2 pos J
1 32 4 ib [B
3 32 5 c I
4 32 6 type I
7 20 7 p I
12 20 8 ofs J
21 27 7 p I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
curs
pos
long getObjectSize(org.eclipse.jgit.internal.storage.file.WindowCursor, org.eclipse.jgit.lib.AnyObjectId);
descriptor: (Lorg/eclipse/jgit/internal/storage/file/WindowCursor;Lorg/eclipse/jgit/lib/AnyObjectId;)J
flags: (0x0000)
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
aload 2
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.findOffset:(Lorg/eclipse/jgit/lib/AnyObjectId;)J
lstore 3
start local 3 1: lconst_0
lload 3
lcmp
ifge 2
aload 0
aload 1
lload 3
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getObjectSize:(Lorg/eclipse/jgit/internal/storage/file/WindowCursor;J)J
goto 3
StackMap locals: long
StackMap stack:
2: ldc -1
StackMap locals:
StackMap stack: long
3: lreturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 4 1 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
0 4 2 id Lorg/eclipse/jgit/lib/AnyObjectId;
1 4 3 offset J
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
curs
id
long getObjectSize(org.eclipse.jgit.internal.storage.file.WindowCursor, long);
descriptor: (Lorg/eclipse/jgit/internal/storage/file/WindowCursor;J)J
flags: (0x0000)
Code:
stack=8, locals=14, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.eclipse.jgit.internal.storage.file.WindowCursor.tempId:[B
astore 4
start local 4 1: aload 0
lload 2
aload 4
iconst_0
bipush 20
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
2: aload 4
iconst_0
baload
sipush 255
iand
istore 5
start local 5 3: iload 5
iconst_4
ishr
bipush 7
iand
istore 6
start local 6 4: iload 5
bipush 15
iand
i2l
lstore 7
start local 7 5: iconst_4
istore 9
start local 9 6: iconst_1
istore 10
start local 10 7: goto 11
8: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.file.WindowCursor long byte[] int int long int int
StackMap stack:
aload 4
iload 10
iinc 10 1
baload
sipush 255
iand
istore 5
9: lload 7
iload 5
bipush 127
iand
i2l
iload 9
lshl
ladd
lstore 7
10: iinc 9 7
11: StackMap locals:
StackMap stack:
iload 5
sipush 128
iand
ifne 8
12: iload 6
tableswitch { // 1 - 7
1: 13
2: 13
3: 13
4: 13
5: 22
6: 14
7: 20
default: 22
}
13: StackMap locals:
StackMap stack:
lload 7
lreturn
14: StackMap locals:
StackMap stack:
aload 4
iload 10
iinc 10 1
baload
sipush 255
iand
istore 5
15: goto 17
16: StackMap locals:
StackMap stack:
aload 4
iload 10
iinc 10 1
baload
sipush 255
iand
istore 5
17: StackMap locals:
StackMap stack:
iload 5
sipush 128
iand
ifne 16
18: lload 2
iload 10
i2l
ladd
lstore 11
start local 11 19: goto 25
end local 11 20: StackMap locals:
StackMap stack:
lload 2
iload 10
i2l
ladd
ldc 20
ladd
lstore 11
start local 11 21: goto 25
end local 11 22: StackMap locals:
StackMap stack:
new java.io.IOException
dup
23: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.unknownObjectType:Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
24: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
start local 11 25: StackMap locals: long
StackMap stack:
aload 0
aload 1
lload 11
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getDeltaHeader:(Lorg/eclipse/jgit/internal/storage/file/WindowCursor;J)[B
invokestatic org.eclipse.jgit.internal.storage.pack.BinaryDelta.getResultSize:([B)J
26: lreturn
27: StackMap locals:
StackMap stack: java.util.zip.DataFormatException
astore 13
start local 13 28: new org.eclipse.jgit.errors.CorruptObjectException
dup
29: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.objectAtHasBadZlibStream:Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
lload 2
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
30: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getPackFile:()Ljava/io/File;
aastore
31: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
32: aload 13
33: invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 13 end local 11 end local 10 end local 9 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 34 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 34 1 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
0 34 2 pos J
1 34 4 ib [B
3 34 5 c I
4 34 6 type I
5 34 7 sz J
6 34 9 shift I
7 34 10 p I
19 20 11 deltaAt J
21 22 11 deltaAt J
25 34 11 deltaAt J
28 34 13 e Ljava/util/zip/DataFormatException;
Exception table:
from to target type
25 26 27 Class java.util.zip.DataFormatException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
curs
pos
org.eclipse.jgit.internal.storage.file.LocalObjectRepresentation representation(org.eclipse.jgit.internal.storage.file.WindowCursor, org.eclipse.jgit.lib.AnyObjectId);
descriptor: (Lorg/eclipse/jgit/internal/storage/file/WindowCursor;Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/internal/storage/file/LocalObjectRepresentation;
flags: (0x0000)
Code:
stack=7, locals=13, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
aload 2
invokevirtual org.eclipse.jgit.internal.storage.file.PackIndex.findOffset:(Lorg/eclipse/jgit/lib/AnyObjectId;)J
lstore 3
start local 3 1: lload 3
lconst_0
lcmp
ifge 3
2: aconst_null
areturn
3: StackMap locals: long
StackMap stack:
aload 1
getfield org.eclipse.jgit.internal.storage.file.WindowCursor.tempId:[B
astore 5
start local 5 4: aload 0
lload 3
aload 5
iconst_0
bipush 20
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
5: aload 5
iconst_0
baload
sipush 255
iand
istore 6
start local 6 6: iconst_1
istore 7
start local 7 7: iload 6
iconst_4
ishr
bipush 7
iand
istore 8
start local 8 8: goto 10
9: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile org.eclipse.jgit.internal.storage.file.WindowCursor org.eclipse.jgit.lib.AnyObjectId long byte[] int int int
StackMap stack:
aload 5
iload 7
iinc 7 1
baload
sipush 255
iand
istore 6
10: StackMap locals:
StackMap stack:
iload 6
sipush 128
iand
ifne 9
11: aload 0
lload 3
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.findEndOffset:(J)J
lload 3
lsub
lstore 9
start local 9 12: iload 8
tableswitch { // 1 - 7
1: 13
2: 13
3: 13
4: 13
5: 29
6: 14
7: 24
default: 29
}
13: StackMap locals: long
StackMap stack:
aload 0
lload 3
lload 9
iload 7
i2l
lsub
invokestatic org.eclipse.jgit.internal.storage.file.LocalObjectRepresentation.newWhole:(Lorg/eclipse/jgit/internal/storage/file/PackFile;JJ)Lorg/eclipse/jgit/internal/storage/file/LocalObjectRepresentation;
areturn
14: StackMap locals:
StackMap stack:
aload 5
iload 7
iinc 7 1
baload
sipush 255
iand
istore 6
15: iload 6
bipush 127
iand
i2l
lstore 11
start local 11 16: goto 21
17: StackMap locals: long
StackMap stack:
lload 11
lconst_1
ladd
lstore 11
18: aload 5
iload 7
iinc 7 1
baload
sipush 255
iand
istore 6
19: lload 11
bipush 7
lshl
lstore 11
20: lload 11
iload 6
bipush 127
iand
i2l
ladd
lstore 11
21: StackMap locals:
StackMap stack:
iload 6
sipush 128
iand
ifne 17
22: lload 3
lload 11
lsub
lstore 11
23: aload 0
lload 3
lload 9
iload 7
i2l
lsub
lload 11
invokestatic org.eclipse.jgit.internal.storage.file.LocalObjectRepresentation.newDelta:(Lorg/eclipse/jgit/internal/storage/file/PackFile;JJJ)Lorg/eclipse/jgit/internal/storage/file/LocalObjectRepresentation;
areturn
end local 11 24: StackMap locals:
StackMap stack:
lload 9
iload 7
i2l
lsub
lstore 9
25: lload 9
ldc 20
lsub
lstore 9
26: aload 0
lload 3
iload 7
i2l
ladd
aload 5
iconst_0
bipush 20
aload 1
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.readFully:(J[BIILorg/eclipse/jgit/internal/storage/file/WindowCursor;)V
27: aload 5
invokestatic org.eclipse.jgit.lib.ObjectId.fromRaw:([B)Lorg/eclipse/jgit/lib/ObjectId;
astore 11
start local 11 28: aload 0
lload 3
lload 9
aload 11
invokestatic org.eclipse.jgit.internal.storage.file.LocalObjectRepresentation.newDelta:(Lorg/eclipse/jgit/internal/storage/file/PackFile;JJLorg/eclipse/jgit/lib/ObjectId;)Lorg/eclipse/jgit/internal/storage/file/LocalObjectRepresentation;
areturn
end local 11 29: StackMap locals:
StackMap stack:
new java.io.IOException
dup
30: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.unknownObjectType:Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
31: iload 8
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
32: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
33: invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 9 end local 8 end local 7 end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 34 1 curs Lorg/eclipse/jgit/internal/storage/file/WindowCursor;
0 34 2 objectId Lorg/eclipse/jgit/lib/AnyObjectId;
1 34 3 pos J
4 34 5 ib [B
6 34 6 c I
7 34 7 p I
8 34 8 typeCode I
12 34 9 len J
16 24 11 ofs J
28 29 11 id Lorg/eclipse/jgit/lib/ObjectId;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
curs final
objectId final
private long findEndOffset(long);
descriptor: (J)J
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.length:J
ldc 20
lsub
lstore 3
start local 3 1: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getReverseIdx:()Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
lload 1
lload 3
invokevirtual org.eclipse.jgit.internal.storage.file.PackReverseIndex.findNextOffset:(JJ)J
lreturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 2 1 startOffset J
1 2 3 maxOffset J
Exceptions:
throws java.io.IOException, org.eclipse.jgit.errors.CorruptObjectException
MethodParameters:
Name Flags
startOffset
synchronized org.eclipse.jgit.internal.storage.file.PackBitmapIndex getBitmapIndex();
descriptor: ()Lorg/eclipse/jgit/internal/storage/file/PackBitmapIndex;
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.invalid:Z
ifne 1
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.invalidBitmap:Z
ifeq 2
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.bitmapIdx:Lorg/eclipse/jgit/internal/storage/file/PackBitmapIndex;
ifnonnull 13
aload 0
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.BITMAP_INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.hasExt:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Z
ifeq 13
3: aload 0
getstatic org.eclipse.jgit.internal.storage.pack.PackExt.BITMAP_INDEX:Lorg/eclipse/jgit/internal/storage/pack/PackExt;
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.extFile:(Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Ljava/io/File;
aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
4: aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.getReverseIdx:()Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
5: invokestatic org.eclipse.jgit.internal.storage.file.PackBitmapIndex.open:(Ljava/io/File;Lorg/eclipse/jgit/internal/storage/file/PackIndex;Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;)Lorg/eclipse/jgit/internal/storage/file/PackBitmapIndex;
astore 1
start local 1 6: goto 10
end local 1 StackMap locals:
StackMap stack: java.io.FileNotFoundException
7: pop
8: aload 0
iconst_1
putfield org.eclipse.jgit.internal.storage.file.PackFile.invalidBitmap:Z
9: aconst_null
areturn
start local 1 10: StackMap locals: org.eclipse.jgit.internal.storage.file.PackBitmapIndex
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packChecksum:[B
aload 1
getfield org.eclipse.jgit.internal.storage.file.PackBitmapIndex.packChecksum:[B
invokestatic java.util.Arrays.equals:([B[B)Z
ifeq 12
11: aload 0
aload 1
putfield org.eclipse.jgit.internal.storage.file.PackFile.bitmapIdx:Lorg/eclipse/jgit/internal/storage/file/PackBitmapIndex;
goto 13
12: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.eclipse.jgit.internal.storage.file.PackFile.invalidBitmap:Z
end local 1 13: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.bitmapIdx:Lorg/eclipse/jgit/internal/storage/file/PackBitmapIndex;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
6 7 1 idx Lorg/eclipse/jgit/internal/storage/file/PackBitmapIndex;
10 13 1 idx Lorg/eclipse/jgit/internal/storage/file/PackBitmapIndex;
Exception table:
from to target type
3 6 7 Class java.io.FileNotFoundException
Exceptions:
throws java.io.IOException
private synchronized org.eclipse.jgit.internal.storage.file.PackReverseIndex getReverseIdx();
descriptor: ()Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.reverseIdx:Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
ifnonnull 2
1: aload 0
new org.eclipse.jgit.internal.storage.file.PackReverseIndex
dup
aload 0
invokevirtual org.eclipse.jgit.internal.storage.file.PackFile.idx:()Lorg/eclipse/jgit/internal/storage/file/PackIndex;
invokespecial org.eclipse.jgit.internal.storage.file.PackReverseIndex.<init>:(Lorg/eclipse/jgit/internal/storage/file/PackIndex;)V
putfield org.eclipse.jgit.internal.storage.file.PackFile.reverseIdx:Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.reverseIdx:Lorg/eclipse/jgit/internal/storage/file/PackReverseIndex;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
Exceptions:
throws java.io.IOException
private boolean isCorrupt(long);
descriptor: (J)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.corruptObjects:Lorg/eclipse/jgit/util/LongList;
astore 3
start local 3 1: aload 3
ifnonnull 3
2: iconst_0
ireturn
3: StackMap locals: org.eclipse.jgit.util.LongList
StackMap stack:
aload 3
dup
astore 4
monitorenter
4: aload 3
lload 1
invokevirtual org.eclipse.jgit.util.LongList.contains:(J)Z
aload 4
monitorexit
5: ireturn
6: StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile long org.eclipse.jgit.util.LongList org.eclipse.jgit.util.LongList
StackMap stack: java.lang.Throwable
aload 4
monitorexit
7: athrow
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 8 1 offset J
1 8 3 list Lorg/eclipse/jgit/util/LongList;
Exception table:
from to target type
4 5 6 any
6 7 6 any
MethodParameters:
Name Flags
offset
private void setCorrupt(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.corruptObjects:Lorg/eclipse/jgit/util/LongList;
astore 3
start local 3 1: aload 3
ifnonnull 11
2: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.readLock:Ljava/lang/Object;
dup
astore 4
monitorenter
3: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.corruptObjects:Lorg/eclipse/jgit/util/LongList;
astore 3
4: aload 3
ifnonnull 7
5: new org.eclipse.jgit.util.LongList
dup
invokespecial org.eclipse.jgit.util.LongList.<init>:()V
astore 3
6: aload 0
aload 3
putfield org.eclipse.jgit.internal.storage.file.PackFile.corruptObjects:Lorg/eclipse/jgit/util/LongList;
7: StackMap locals: org.eclipse.jgit.util.LongList java.lang.Object
StackMap stack:
aload 4
monitorexit
8: goto 11
StackMap locals:
StackMap stack: java.lang.Throwable
9: aload 4
monitorexit
10: athrow
11: StackMap locals:
StackMap stack:
aload 3
dup
astore 4
monitorenter
12: aload 3
lload 1
invokevirtual org.eclipse.jgit.util.LongList.add:(J)V
13: aload 4
monitorexit
14: goto 17
StackMap locals: org.eclipse.jgit.internal.storage.file.PackFile long org.eclipse.jgit.util.LongList org.eclipse.jgit.util.LongList
StackMap stack: java.lang.Throwable
15: aload 4
monitorexit
16: athrow
17: StackMap locals:
StackMap stack:
return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 18 1 offset J
1 18 3 list Lorg/eclipse/jgit/util/LongList;
Exception table:
from to target type
3 8 9 any
9 10 9 any
12 14 15 any
15 16 15 any
MethodParameters:
Name Flags
offset
private java.io.File extFile(org.eclipse.jgit.internal.storage.pack.PackExt);
descriptor: (Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Ljava/io/File;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
invokevirtual java.io.File.getName:()Ljava/lang/String;
astore 2
start local 2 1: aload 2
bipush 46
invokevirtual java.lang.String.lastIndexOf:(I)I
istore 3
start local 3 2: iload 3
ifge 3
aload 2
goto 4
StackMap locals: java.lang.String int
StackMap stack:
3: aload 2
iconst_0
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
4: astore 4
start local 4 5: new java.io.File
dup
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 1
invokevirtual org.eclipse.jgit.internal.storage.pack.PackExt.getExtension:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 6 1 ext Lorg/eclipse/jgit/internal/storage/pack/PackExt;
1 6 2 p Ljava/lang/String;
2 6 3 dot I
5 6 4 b Ljava/lang/String;
MethodParameters:
Name Flags
ext
private boolean hasExt(org.eclipse.jgit.internal.storage.pack.PackExt);
descriptor: (Lorg/eclipse/jgit/internal/storage/pack/PackExt;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.extensions:I
aload 1
invokevirtual org.eclipse.jgit.internal.storage.pack.PackExt.getBit:()I
iand
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 2 1 ext Lorg/eclipse/jgit/internal/storage/pack/PackExt;
MethodParameters:
Name Flags
ext
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "PackFile [packFileName="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
invokevirtual java.io.File.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", length="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packFile:Ljava/io/File;
invokevirtual java.io.File.length:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc ", packChecksum="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packChecksum:[B
invokestatic org.eclipse.jgit.lib.ObjectId.fromRaw:([B)Lorg/eclipse/jgit/lib/ObjectId;
invokevirtual org.eclipse.jgit.lib.ObjectId.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jgit/internal/storage/file/PackFile;
private static int lambda$0(org.eclipse.jgit.internal.storage.file.PackFile, org.eclipse.jgit.internal.storage.file.PackFile);
descriptor: (Lorg/eclipse/jgit/internal/storage/file/PackFile;Lorg/eclipse/jgit/internal/storage/file/PackFile;)I
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.eclipse.jgit.internal.storage.file.PackFile.packLastModified:Ljava/time/Instant;
1: aload 0
getfield org.eclipse.jgit.internal.storage.file.PackFile.packLastModified:Ljava/time/Instant;
invokevirtual java.time.Instant.compareTo:(Ljava/time/Instant;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 a Lorg/eclipse/jgit/internal/storage/file/PackFile;
0 2 1 b Lorg/eclipse/jgit/internal/storage/file/PackFile;
}
Signature: Ljava/lang/Object;Ljava/lang/Iterable<Lorg/eclipse/jgit/internal/storage/file/PackIndex$MutableEntry;>;
SourceFile: "PackFile.java"
NestMembers:
org.eclipse.jgit.internal.storage.file.PackFile$Delta
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public MapMode = java.nio.channels.FileChannel$MapMode of java.nio.channels.FileChannel
public ExceedsByteArrayLimit = org.eclipse.jgit.errors.LargeObjectException$ExceedsByteArrayLimit of org.eclipse.jgit.errors.LargeObjectException
public OutOfMemory = org.eclipse.jgit.errors.LargeObjectException$OutOfMemory of org.eclipse.jgit.errors.LargeObjectException
Entry = org.eclipse.jgit.internal.storage.file.DeltaBaseCache$Entry of org.eclipse.jgit.internal.storage.file.DeltaBaseCache
private Delta = org.eclipse.jgit.internal.storage.file.PackFile$Delta of org.eclipse.jgit.internal.storage.file.PackFile
public MutableEntry = org.eclipse.jgit.internal.storage.file.PackIndex$MutableEntry of org.eclipse.jgit.internal.storage.file.PackIndex
public SmallObject = org.eclipse.jgit.lib.ObjectLoader$SmallObject of org.eclipse.jgit.lib.ObjectLoader