[kaffe] Re: java/text/SimpleDateFormat.java (compileFormat)
Michael Koch
konqueror@gmx.de
Thu Nov 27 08:20:04 2003
On Fri, Nov 28, 2003 at 01:06:43AM +0900, Ito Kazumitsu wrote:
> Hi,
>
> Browsing GNU Classpath's CVS log, I found:
>
> 2003-10-02 Michael Koch <konqueror@gmx.de>
>
> * java/text/SimpleDateFormat.java
> (compileFormat): Character.isLetter(char) allows too much characters.
> Replace it with Character.isLowerCase(char) ||
> Character.isUpperCase(char).
>
> I think this change has something to do with the bug report:
> http://www.kaffe.org/pipermail/kaffe/2003-August/043742.html
> http://www.kaffe.org/pipermail/kaffe/2003-August/043743.html,
>
> where I suggested to use
>
> (thisChar >= 'A' && thisChar <= 'Z') || (thisChar >= 'a' && thisChar <= 'z')
>
> instead of
>
> Character.isLetter(thisChar)
>
> Why do we use "Character.isLowerCase(char) || Character.isUpperCase(char)"
> when the API doc clearly says, "Within date and time pattern strings,
> unquoted letters from 'A' to 'Z' and from 'a' to 'z' are interpreted
> as pattern letters representing the components of a date or time string"?
>
> I am afraid "Character.isLowerCase(char) || Character.isUpperCase(char)"
> also allows too many characters, including Greek or Slavic alphabet
> or even Japanese Zenkaku alphabet.
Grrr! I thought its the same. All I found int the docs indicated this.
Can you please commit/provide a patch that fixes this ?
Michael