Revision: 10113
http://sourceforge.net/p/languagetool/code/10113
Author: jaumeortola
Date: 2013-05-18 08:44:54 +0000 (Sat, 18 May 2013)
Log Message:
-----------
Prevent out of bounds exception in UppercasSentenceStartRule.
Modified Paths:
--------------
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/rules/UppercaseSentenceStartRule.java
trunk/languagetool/languagetool-core/src/test/java/org/languagetool/rules/UppercaseSentenceStartRuleTest.java
Modified:
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/rules/UppercaseSentenceStartRule.java
===================================================================
---
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/rules/UppercaseSentenceStartRule.java
2013-05-18 08:34:08 UTC (rev 10112)
+++
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/rules/UppercaseSentenceStartRule.java
2013-05-18 08:44:54 UTC (rev 10113)
@@ -119,7 +119,8 @@
lastParagraphString = lastToken;
//allows enumeration with lowercase letters: a), iv., etc.
- if (NUMERALS_EN.matcher(tokens[matchTokenPos].getToken()).matches()
+ if (matchTokenPos+1 < tokens.length
+ && NUMERALS_EN.matcher(tokens[matchTokenPos].getToken()).matches()
&& (tokens[matchTokenPos+1].getToken().equals(".")
|| tokens[matchTokenPos+1].getToken().equals(")"))) {
preventError = true;
Modified:
trunk/languagetool/languagetool-core/src/test/java/org/languagetool/rules/UppercaseSentenceStartRuleTest.java
===================================================================
---
trunk/languagetool/languagetool-core/src/test/java/org/languagetool/rules/UppercaseSentenceStartRuleTest.java
2013-05-18 08:34:08 UTC (rev 10112)
+++
trunk/languagetool/languagetool-core/src/test/java/org/languagetool/rules/UppercaseSentenceStartRuleTest.java
2013-05-18 08:44:54 UTC (rev 10113)
@@ -46,6 +46,9 @@
assertEquals(0, matches.length);
matches = rule.match(langTool.getAnalyzedSentence("This is a test
sentence"));
assertEquals(0, matches.length);
+ matches = rule.match(langTool.getAnalyzedSentence(""));
+ assertEquals(0, matches.length);
+
// incorrect sentences:
matches = rule.match(langTool.getAnalyzedSentence("this is a test
sentence."));
@@ -56,6 +59,8 @@
assertEquals(1, matches.length);
assertEquals(0, matches[0].getFromPos());
assertEquals(4, matches[0].getToPos());
+ matches = rule.match(langTool.getAnalyzedSentence("'a"));
+ assertEquals(1, matches.length);
}
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
AlienVault Unified Security Management (USM) platform delivers complete
security visibility with the essential security capabilities. Easily and
efficiently configure, manage, and operate all of your security controls
from a single console and one unified framework. Download a free trial.
http://p.sf.net/sfu/alienvault_d2d
_______________________________________________
Languagetool-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/languagetool-commits