From: <mku...@us...> - 2012-05-29 20:15:03
|
Revision: 54565 http://firebird.svn.sourceforge.net/firebird/?rev=54565&view=rev Author: mkubecek Date: 2012-05-29 20:14:54 +0000 (Tue, 29 May 2012) Log Message: ----------- isql: fix output if charset is different from locale Modified Paths: -------------- firebird/trunk/src/isql/isql.epp Modified: firebird/trunk/src/isql/isql.epp =================================================================== --- firebird/trunk/src/isql/isql.epp 2012-05-29 16:02:39 UTC (rev 54564) +++ firebird/trunk/src/isql/isql.epp 2012-05-29 20:14:54 UTC (rev 54565) @@ -221,7 +221,18 @@ if (len > width) len = width; - sprintf(buffer, (right ? "%*.*s" : "%-*.*s"), width, len, str); + if (right) { + memcpy(buffer + width - len, str, len); + if (width > len) + memset(buffer, ' ', width - len); + } + else + { + memcpy(buffer, str, len); + if (width > len) + memset(buffer + len, ' ', width - len); + } + buffer[width] = '\0'; return; } @@ -562,7 +573,7 @@ } #endif // MU_ISQL - setlocale(LC_ALL, ""); + setlocale(LC_CTYPE, ""); TEXT tabname[WORDLENGTH]; tabname[0] = '\0'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |