function AnsiToUTF and localeToUTF duplicate and conflict
Yung-Jang Lee
yjlee123 at gmail.com
Sat Aug 2 15:45:13 CEST 2008
Hi, all :
In recent SVN trunk, I found a new files windows_tools*\charEncodings.c
that have functions for encoding convert and this is conflicted with
function in file locazilation*\localetoutf.c . Function ANSIToUTF8 (defined
in charEncodings.c ) is used in printf_scilab :
-----------------------sciprint.c---------------------------------------
void printf_scilab(char *buffer,BOOL withDiary)
{
if (buffer)
{
if (getScilabMode() == SCILAB_STD)
{
#ifdef _MSC_VER
{
char *UTF8Buffer = ANSIToUTF8(buffer);//<--------
if (UTF8Buffer)
{
ConsolePrintf(UTF8Buffer);
//<------------------------- call localeToUTF inside ConsolePrintf
FREE(UTF8Buffer);
}
-------------------------------------------------------------------------------
On my machine (WINDOW/XP,CP950) , conversion to UTF strings is thus
performed twice, and this make console fail to display chinese again.
I think functions in files 'charEncodings.c' and 'localetoutf.c' should
merged and the encoding transformation need some agreements between
developers.
YungLee
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/dev/attachments/20080802/08ce9f3a/attachment.htm>
More information about the dev
mailing list