From 9c4d42e94dbf199a9cef46a4b9286552c8633f4f Mon Sep 17 00:00:00 2001 From: "Shawn O. Pearce" Date: Sat, 15 May 2010 16:18:44 -0700 Subject: Factor out duplicate Inflater setup in WindowCursor Since we use this code twice, pull it into a private method. Let the compiler/JIT worry about whether or not this logic should be inlined into the call sites. Change-Id: Ia44fb01e0328485bcdfd7af96835d62b227a0fb1 Signed-off-by: Shawn O. Pearce --- .../src/org/eclipse/jgit/lib/WindowCursor.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/WindowCursor.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/WindowCursor.java index 93e2a02420..968c92e5ce 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/WindowCursor.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/WindowCursor.java @@ -116,10 +116,7 @@ public final class WindowCursor { */ int inflate(final PackFile pack, long position, final byte[] dstbuf, int dstoff) throws IOException, DataFormatException { - if (inf == null) - inf = InflaterCache.get(); - else - inf.reset(); + prepareInflater(); for (;;) { pin(pack, position); dstoff = window.inflate(position, dstbuf, dstoff, inf); @@ -131,10 +128,7 @@ public final class WindowCursor { void inflateVerify(final PackFile pack, long position) throws IOException, DataFormatException { - if (inf == null) - inf = InflaterCache.get(); - else - inf.reset(); + prepareInflater(); for (;;) { pin(pack, position); window.inflateVerify(position, inf); @@ -144,6 +138,13 @@ public final class WindowCursor { } } + private void prepareInflater() { + if (inf == null) + inf = InflaterCache.get(); + else + inf.reset(); + } + private void pin(final PackFile pack, final long position) throws IOException { final ByteWindow w = window; -- cgit v1.2.3