--- ie_exp_RTF_listenerWriteDoc.cpp-was	Wed Nov  1 10:13:10 2000
+++ ie_exp_RTF_listenerWriteDoc.cpp	Wed Nov  1 10:17:48 2000
@@ -194,6 +194,7 @@
 		default:
 			if (XAP_EncodingManager::instance->cjk_locale())
 			{
+#if 0			
 				/*FIXME: can it happen that wctomb will fail under CJK locales? */
 				m_wctomb.wctomb_or_fallback(mbbuf,mblen,*pData++);
 				for(int i=0;i<mblen;++i) {
@@ -204,6 +205,17 @@
 						*pBuf++ = c;
 					
 				};
+#else
+				UT_UCSChar c = *pData++;
+				if (c>0x007f) {
+					m_pie->_rtf_keyword("uc",0);
+					signed short si = *((signed short *)c);		// so we need to write negative
+					m_pie->_rtf_keyword("u",si);					// numbers for large unicode values.
+										
+				} else {
+					*pBuf++ = (UT_Byte)c;
+				};
+#endif				
 			} else if (!m_pie->m_atticFormat) 
 			{
 				if (*pData > 0x00ff)		// emit unicode character