Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com X-Apparently-From: Message-ID: <3B150120.973EC13C@yahoo.com> Date: Wed, 30 May 2001 10:18:08 -0400 From: Earnie Boyd Reply-To: Cygwin Developers X-Mailer: Mozilla 4.76 [en] (WinNT; U) X-Accept-Language: en MIME-Version: 1.0 To: cygwin-developers AT cygwin DOT com Subject: Re: isspace() & i18n References: <13254193676 DOT 20010530145756 AT logos-m DOT ru> <20010530095254 DOT B17603 AT redhat DOT com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Christopher Faylor wrote: > > On Wed, May 30, 2001 at 02:57:56PM +0400, egor duda wrote: > >Hi! > > > > cygwin calls newlib's isspace() passing it a signed char. this works > >ok for ascii symbols 0x00-0x7f, but fails with, say, cyrillic symbols > > with codes > 0x80. As a result `cd dir-with-last-cyrillic-letter' > >fails as chdir strips last symbols, thinking they're spaces -- > >isspace() is called with negative parameter. > > > >Any thoughts as of how we should handle this? > > Maybe we just need a cygwin_isspace which checks for just tabs and spaces? > Shouldn't this be fixed in the newlib's ctype library? In particular in the ctype_.c file? Hmm... Why is isspace() being called with a negative parameter? The ctype.h header declares both a function and a macro which is being used? The macro declares the passed character as unsigned, the functions parameter is a signed integer. So, it appears the function is being used and the chdir needs to ensure that an unsigned value is passed. -- Earnie. _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com