diff --git a/languagetool-http-client/src/main/java/org/languagetool/remote/ArtificialErrorEval.java b/languagetool-http-client/src/main/java/org/languagetool/remote/ArtificialErrorEval.java index f5de62d62ea1..f50c53206fce 100644 --- a/languagetool-http-client/src/main/java/org/languagetool/remote/ArtificialErrorEval.java +++ b/languagetool-http-client/src/main/java/org/languagetool/remote/ArtificialErrorEval.java @@ -794,7 +794,7 @@ private static List differences(String s1, String s2) { fromStart++; } int fromEnd = 0; - while (s1.charAt(l1 - 1 - fromEnd) == s2.charAt(l2 - 1 - fromEnd)) { + while (fromEnd < l1 && fromEnd < l2 && s1.charAt(l1 - 1 - fromEnd) == s2.charAt(l2 - 1 - fromEnd)) { fromEnd++; } // corrections (e.g. stress vs stresses)