summaryrefslogtreecommitdiff
path: root/src/runtime/java/org
diff options
context:
space:
mode:
authorkr.angelov <kr.angelov@gmail.com>2014-12-08 19:38:03 +0000
committerkr.angelov <kr.angelov@gmail.com>2014-12-08 19:38:03 +0000
commit386ec87405e293d2ef423e3f8cab9b317bbce2f6 (patch)
tree644e2b11b0d7273ce9202835a075ae8f86982e1d /src/runtime/java/org
parent676b0d6e8192c3cab92ca4cb8247cba00533402d (diff)
bugfix for unknown words
Diffstat (limited to 'src/runtime/java/org')
-rw-r--r--src/runtime/java/org/grammaticalframework/pgf/UnknownLiteralCallback.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/runtime/java/org/grammaticalframework/pgf/UnknownLiteralCallback.java b/src/runtime/java/org/grammaticalframework/pgf/UnknownLiteralCallback.java
index 140a07836..347c2e28a 100644
--- a/src/runtime/java/org/grammaticalframework/pgf/UnknownLiteralCallback.java
+++ b/src/runtime/java/org/grammaticalframework/pgf/UnknownLiteralCallback.java
@@ -11,7 +11,8 @@ public class UnknownLiteralCallback implements LiteralCallback {
}
public CallbackResult match(int lin_idx, String sentence, int offset) {
- if (!Character.isUpperCase(sentence.charAt(offset))) {
+ if (offset < sentence.length() &&
+ !Character.isUpperCase(sentence.charAt(offset))) {
int start_offset = offset;
while (offset < sentence.length() &&
!Character.isWhitespace(sentence.charAt(offset))) {
@@ -19,7 +20,7 @@ public class UnknownLiteralCallback implements LiteralCallback {
}
int end_offset = offset;
String word = sentence.substring(start_offset,end_offset);
-
+
if (concr.lookupMorpho(word).size() == 0) {
Expr expr = new Expr("MkSymb", new Expr(word));
return new CallbackResult(new ExprProb(expr, 0), end_offset);