summaryrefslogtreecommitdiff
path: root/i18npool/source/transliteration/transliteration_Ignore.cxx
diff options
context:
space:
mode:
authorRüdiger Timm <rt@openoffice.org>2003-05-21 07:06:49 +0000
committerRüdiger Timm <rt@openoffice.org>2003-05-21 07:06:49 +0000
commita264c6baabc3ff9f415a08ed95a30f043ec070da (patch)
tree6c829dc839d7f0c657e06ffa3ef8dc3dc3052ab4 /i18npool/source/transliteration/transliteration_Ignore.cxx
parented40d0f7ebdb38078b5baa3f9c94c05aaea23480 (diff)
INTEGRATION: CWS i18n04 (1.6.8); FILE MERGED
2003/05/09 21:35:07 khong 1.6.8.1: #109508# fix problem for Japanese search
Diffstat (limited to 'i18npool/source/transliteration/transliteration_Ignore.cxx')
-rw-r--r--i18npool/source/transliteration/transliteration_Ignore.cxx21
1 files changed, 15 insertions, 6 deletions
diff --git a/i18npool/source/transliteration/transliteration_Ignore.cxx b/i18npool/source/transliteration/transliteration_Ignore.cxx
index e3f2a328c331..d5de7592b995 100644
--- a/i18npool/source/transliteration/transliteration_Ignore.cxx
+++ b/i18npool/source/transliteration/transliteration_Ignore.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: transliteration_Ignore.cxx,v $
*
- * $Revision: 1.6 $
+ * $Revision: 1.7 $
*
- * last change: $Author: vg $ $Date: 2003-04-24 11:10:22 $
+ * last change: $Author: rt $ $Date: 2003-05-21 08:06:49 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -191,10 +191,14 @@ transliteration_Ignore::folding( const OUString& inStr, sal_Int32 startPos,
for (m = map; m->replaceChar; m++) {
if (previousChar == m->previousChar && currentChar == m->currentChar ) {
if (useOffset) {
+ if (! m->two2one)
+ *p++ = position;
position++;
*p++ = position++;
}
- *dst++ = m->replaceChar;\
+ *dst++ = m->replaceChar;
+ if (!m->two2one)
+ *dst++ = currentChar;
previousChar = *src++;
nCount--;
break;
@@ -221,9 +225,14 @@ transliteration_Ignore::folding( const OUString& inStr, sal_Int32 startPos,
// Translation
while (nCount -- > 0) {
sal_Unicode c = *src++;
- *dst ++ = func ? func( c) : (*table)[ c ];
- if (useOffset)
- *p ++ = position ++;
+ c = func ? func( c) : (*table)[ c ];
+ if (c != 0xffff)
+ *dst ++ = c;
+ if (useOffset) {
+ if (c != 0xffff)
+ *p ++ = position;
+ position++;
+ }
}
}
*dst = (sal_Unicode) 0;