cargilld 2005/02/23 07:59:11
Modified: c/src/xercesc/util/Transcoders/Uniconv390
Uniconv390TransService.cpp
Log:
Allow ICU to be used for transcoding and casing, according to environment
variable setting on 390. Fix from Steve Dulin.
Revision Changes Path
1.9 +14 -5
xml-xerces/c/src/xercesc/util/Transcoders/Uniconv390/Uniconv390TransService.cpp
Index: Uniconv390TransService.cpp
===================================================================
RCS file:
/home/cvs/xml-xerces/c/src/xercesc/util/Transcoders/Uniconv390/Uniconv390TransService.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- Uniconv390TransService.cpp 8 Sep 2004 13:56:46 -0000 1.8
+++ Uniconv390TransService.cpp 23 Feb 2005 15:59:11 -0000 1.9
@@ -164,10 +164,6 @@
Uniconv390TransService::Uniconv390TransService()
{
- fCaseConverter = new uniconvcaseconverter;
- fCaseConverter->ftoupperhand=UNICONV_NOHANDLE;
- fCaseConverter->ftolowerhand=UNICONV_NOHANDLE;
-
char * myenviron = getenv("_IXM_FORCE_CONVERSION");
gForceTranscode = NO_FORCE;
if ( !strcmp(myenviron,"USE_ICU") )
@@ -176,6 +172,19 @@
gForceTranscode = MUST_USE_UNICONV;
DBGPRINTF3("FORCE PARM=%s %d\n",myenviron,gForceTranscode);
+// If we are forcing ICU to be used fro transcoding then we also should
+// force it to be used for case conversions.
+if (gForceTranscode == MUST_USE_ICU) {
+ fCaseConverter = new uniconvcaseconverter;
+ fCaseConverter->ftoupperhand=UNICONV_ERROR;
+ fCaseConverter->ftolowerhand=UNICONV_ERROR;
+}
+else {
+ fCaseConverter = new uniconvcaseconverter;
+ fCaseConverter->ftoupperhand=UNICONV_NOHANDLE;
+ fCaseConverter->ftolowerhand=UNICONV_NOHANDLE;
+}
+
fICUService = new ICUTransService;
gViewTranscoder = false;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]