Ticket UUID: | d22946aa0c8052c4dc6edd4b296cb2cb3bc80d7d | ||
Title: | Adding files with non-English file names is not cross-platform | ||
Status: | Open | Type: | Code_Defect |
Severity: | Important | Priority: | |
Subsystem: | Resolution: | Open | |
Last Modified: | 2012-12-03 21:06:31 | ||
Version Found In: | [3873aa7ecb] | ||
Description & Comments: | |||
Reproducing the problem, step by step:
From examining the sources I see that Fossil doesn't differentiate file name encoding on different platforms and assumes it to be always UTF-8. In the contrast, on Windows console applications always use national code pages for file names. In the case of Russian localization of Windows the encoding of file names will be Windows-1251. In src/db.c there are cases of using sqlite3_win32_mbcs_to_utf8() function when reading the repository database, so it opens even if the file name or path contain non-English characters, but no additional conversions (MBCS to UTF-8, UTF8 to MBCS) are made in the process of working with repository files. |