diff options
author | Ivan Frade <ifrade@google.com> | 2025-02-26 19:05:53 -0800 |
---|---|---|
committer | Ivan Frade <ifrade@google.com> | 2025-02-27 18:11:05 +0000 |
commit | 5db57fe2a932fc05d28e057df9ff9d6a0bd6abe3 (patch) | |
tree | 7a7f202ab3fd5283258955e3539a9df99dbfc5b1 | |
parent | 3483bd76e9d5f6ee68fedfa67b4800f80a21d637 (diff) | |
download | jgit-master.tar.gz jgit-master.zip |
If the cached regions are invalid the merger throws an
IllegalStateException. This is too strict. The caller can just
continue working as if there was no cache.
Report the error as IOException, that the caller can catch and handle.
Change-Id: I19a1061225533b46d3a17936912a11000430f2ce
-rw-r--r-- | org.eclipse.jgit.test/tst/org/eclipse/jgit/blame/BlameRegionMergerTest.java | 2 | ||||
-rw-r--r-- | org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameRegionMerger.java | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/blame/BlameRegionMergerTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/blame/BlameRegionMergerTest.java index cf0dc452e7..1b28676fbf 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/blame/BlameRegionMergerTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/blame/BlameRegionMergerTest.java @@ -174,7 +174,7 @@ public class BlameRegionMergerTest extends RepositoryTestCase { public void blame_corruptedIndex() { Region outOfRange = new Region(0, 43, 4); // This region is out of the blamed area - assertThrows(IllegalStateException.class, + assertThrows(IOException.class, () -> blamer.mergeOneRegion(outOfRange)); } diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameRegionMerger.java b/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameRegionMerger.java index bf7e0ff736..67bc6fb789 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameRegionMerger.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameRegionMerger.java @@ -72,7 +72,7 @@ class BlameRegionMerger { List<Candidate> mergeOneRegion(Region region) throws IOException { List<CacheRegion> overlaps = findOverlaps(region); if (overlaps.isEmpty()) { - throw new IllegalStateException( + throw new IOException( "Cached blame should cover all lines"); } /* |