commit 4b4d930011c080ae1aceec044402141a2635c0d3 Author: Tanmai Khanna Date: Thu Aug 20 17:55:01 2020 +0530 Fix wblank printing for single stage transfer where unknowns are used in rules diff --git a/apertium/transfer.cc b/apertium/transfer.cc index 49a14ad..a977e08 100644 --- a/apertium/transfer.cc +++ b/apertium/transfer.cc @@ -686,7 +686,14 @@ Transfer::evalString(xmlNode *element) if(myword != "") { - return out_wblank+"^"+myword+"$"; + if(myword[0] != L'[' && myword[1] != L'[') + { + return myword+"$"; + } + else + { + return out_wblank+"^"+myword+"$"; + } } else { @@ -796,8 +803,15 @@ Transfer::processOut(xmlNode *localroot) if(myword != "") { - fputws_unlocked(UtfConverter::fromUtf8(out_wblank).c_str(), output); - fputwc_unlocked(L'^', output); + if(myword[0] != L'[' && myword[1] != L'[') + { + fputwc_unlocked(L'^', output); + } + else + { + fputws_unlocked(UtfConverter::fromUtf8(out_wblank).c_str(), output); + } + fputws_unlocked(UtfConverter::fromUtf8(myword).c_str(), output); fputwc_unlocked(L'$', output); }