Hello, All.

   We have in tracker multiple tickets about problems with non-ASII names for 
database 
files. Some of them: CORE-4993, CORE-316 (fixed incorrectly), CORE-2172, 
CORE-3172 (which 
is not duplicate and is caused by different reason).
   I suggest to set it up finally in this way:

1) File name from connection string is converted into UTF-8 in Y-valve and then 
everywhere 
is used in this encoding, no code should ever convert it into ANSI codepage.
2) Windows version uses Unicode routines for file handling.
3) File names are not uppercased. It is not widely known, but NTFS has its own 
upcase 
table that may be different from system one. In this case uppercasing of the 
name using 
system locale will cause file to be not found.
4) Databases.conf (and other configs) are considered to have ANSI codepage 
unless they 
have BOM. File names and pathes in config are converted into UTF-8 or UTF-16 on 
read.
5) Case-insensitive routines are used for comparsion of file names from 
connection string 
and configs. They can use system locale.

   Comments?..

-- 
   WBR, SD.

------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785111&iu=/4140
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to