Browse Source

Fix overflow stream leak during merge conflicts

When reading back from an overflowed TemporaryBuffer the InputStream
must be closed to close the FileInputStream that is reading from
the backing file.

Change-Id: Id83d8f16f5b2c2618a9f841ec3508508455a6ae1
tags/v4.0.0.201505050340-m2
Shawn Pearce 9 years ago
parent
commit
e4433e5e37
1 changed files with 3 additions and 2 deletions
  1. 3
    2
      org.eclipse.jgit/src/org/eclipse/jgit/merge/ResolveMerger.java

+ 3
- 2
org.eclipse.jgit/src/org/eclipse/jgit/merge/ResolveMerger.java View File

@@ -810,8 +810,9 @@ public class ResolveMerger extends ThreeWayMerger {
new MergeFormatter().formatMerge(buf, result,
Arrays.asList(commitNames), CHARACTER_ENCODING);
buf.close();
return getObjectInserter().insert(OBJ_BLOB, buf.length(),
buf.openInputStream());
try (InputStream in = buf.openInputStream()) {
return getObjectInserter().insert(OBJ_BLOB, buf.length(), in);
}
} finally {
buf.destroy();
}

Loading…
Cancel
Save