Browse Source

Discard the uncompressed delta as soon as its compressed

The DeltaCache will most likely need to copy the compressed delta
into a new buffer in order to compact away the wasted space at the
end caused by over allocation.  Since we don't need the uncompressed
format anymore, null out our only reference to it so the GC can
reclaim this memory if it needs to perform a collection in order
to satisfy the cache's allocation attempt.

Change-Id: I50403cfd2e3001b093f93a503cccf7adab43cc9d
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
stable-0.9
Shawn O. Pearce 15 years ago
parent
commit
12fe0f2d1e
  1. 1
      org.eclipse.jgit/src/org/eclipse/jgit/storage/pack/DeltaWindow.java

1
org.eclipse.jgit/src/org/eclipse/jgit/storage/pack/DeltaWindow.java

@ -330,6 +330,7 @@ class DeltaWindow {
ZipStream zs = new ZipStream(deflater(), zbuf);
bestDelta.writeTo(zs, null);
bestDelta = null;
int len = zs.finish();
resObj.setCachedDelta(deltaCache.cache(zbuf, len, rawsz));

Loading…
Cancel
Save