Date: Mon, 15 Dec 2003 11:59:57 -0800 From: Max Khon <fjoe@FreeBSD.org> To: Alexander Zagrebin <alexz@visp.ru> Cc: imura@ryu16.org Subject: Re: RELENG_5_2 ntfs mounting problem Message-ID: <20031215195957.GC22232@FreeBSD.org> In-Reply-To: <200312121243.11908.alexz@visp.ru> References: <200312121243.11908.alexz@visp.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
Hello! On Fri, Dec 12, 2003 at 12:43:11PM +0300, Alexander Zagrebin wrote: I forward this to Ryuichiro Imura (he is kiconv maintainer and have recently got his commit bit back). > The FreeBSD 5.2-RC has problem with russian (cyrillic) file names on NTFS > volumes. > If the file name is "ัะตัั" (hex: 0xd4 0xc5 0xd3 0xd4), then after mounting its > name looks like 0xff 0xd4 0xff 0xc5 0xff 0xd3 0xff 0xd4, so file is > inaccessible. > I reason is in function "wchar ntfs_u28" (file ntfs_subr.c). > This function returns value of outbuf (char), converted to wchar. The highest > bit of russian characters (koi8-r encoding) is always 1, so this conversion > works incorrectly (data type char is signed). > > This patch solves the problem. > ===================================================== > --- ntfs_subr.c.orig Fri Dec 12 12:00:31 2003 > +++ ntfs_subr.c Fri Dec 12 11:47:32 2003 > @@ -2143,7 +2143,8 @@ > struct ntfsmount *ntmp, > wchar wc) > { > - char *p, *outp, inbuf[3], outbuf[3]; > + char *p, *outp, inbuf[3]; > + unsigned char outbuf[3]; > size_t ilen, olen; > > if (ntfs_iconv && ntmp->ntm_ic_u2l) { > ===================================================== > > Alexander Zagrebin > --
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031215195957.GC22232>