commit f28bfaea4feb996d22452ecb0ab2c11d2a0f429f Author: Daniel Swanson Date: Thu Aug 12 09:35:36 2021 -0500 indexing issue in postchunk t1x & t2x are internally 0-indexed whereas t3x is 1-indexed (0 is the chunk), so `` needs to convert the index, since it's calculated in the shared code. diff --git a/apertium/postchunk.cc b/apertium/postchunk.cc index 0707e14..81e0466 100644 --- a/apertium/postchunk.cc +++ b/apertium/postchunk.cc @@ -92,8 +92,8 @@ Postchunk::evalCachedString(xmlNode* element) break; case ti_get_case_from: - if (checkIndex(element, ti.getPos(), lword)) { - return copycase(word[ti.getPos()]->chunkPart(attr_items[ti.getContent()]), + if (checkIndex(element, ti.getPos()+1, lword)) { + return copycase(word[ti.getPos()+1]->chunkPart(attr_items[ti.getContent()]), evalString(ti.getPointer())); } break;