* strftime.c (rb_strftime): use locale insensitive functions for tr_TR

locale.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
akr 2008-12-23 10:13:11 +00:00
Родитель ace35ac66c
Коммит 6fcaf92943
3 изменённых файлов: 10 добавлений и 4 удалений

Просмотреть файл

@ -1,3 +1,8 @@
Tue Dec 23 18:44:21 2008 Tanaka Akira <akr@fsij.org>
* strftime.c (rb_strftime): use locale insensitive functions for tr_TR
locale.
Tue Dec 23 17:38:03 2008 Tanaka Akira <akr@fsij.org>
* lib/test/unit/assertions.rb (assert_equal): show small differences

Просмотреть файл

@ -627,8 +627,8 @@ rb_strftime(char *s, size_t maxsize, const char *format, const struct tm *timept
timeptr->tm_year + 1900L);
if (w < 0) goto err;
for (i = 3; i < 6; i++)
if (islower(s[i]))
s[i] = toupper(s[i]);
if (ISLOWER(s[i]))
s[i] = TOUPPER(s[i]);
s += w;
continue;
#endif
@ -781,12 +781,12 @@ rb_strftime(char *s, size_t maxsize, const char *format, const struct tm *timept
switch (flags & (BIT_OF(UPPER)|BIT_OF(LOWER))) {
case BIT_OF(UPPER):
do {
if (islower(*s)) *s = toupper(*s);
if (ISLOWER(*s)) *s = TOUPPER(*s);
} while (s++, --i);
break;
case BIT_OF(LOWER):
do {
if (isupper(*s)) *s = tolower(*s);
if (ISUPPER(*s)) *s = TOLOWER(*s);
} while (s++, --i);
break;
default:

Просмотреть файл

@ -468,5 +468,6 @@ class TestTime < Test::Unit::TestCase
assert_equal("JAN", T2000.strftime("%#b"))
assert_equal("JANUARY", T2000.strftime("%#B"))
assert_equal("JAN", T2000.strftime("%#h"))
assert_equal("FRIDAY", Time.local(2008,1,4).strftime("%#A"))
end
end