summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--strftime.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 00ae386d37..25191fdaca 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Nov 25 10:35:29 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * strftime.c (rb_strftime): "%^P" should convert to upper case.
+ [ruby-dev:37180]
+
Tue Nov 25 07:51:18 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* strftime.c (FMT): use "%0d" formatter for zero padding, not "%.d".
diff --git a/strftime.c b/strftime.c
index 98e193c396..5002c56c06 100644
--- a/strftime.c
+++ b/strftime.c
@@ -404,7 +404,7 @@ rb_strftime(char *s, size_t maxsize, const char *format, const struct tm *timept
case 'p': /* AM or PM based on 12-hour clock */
case 'P': /* am or pm based on 12-hour clock */
if ((*format == 'p' && (flags & BIT_OF(CHCASE))) ||
- (*format == 'P' && !(flags & BIT_OF(CHCASE)))) {
+ (*format == 'P' && !(flags & (BIT_OF(CHCASE)|BIT_OF(UPPER))))) {
flags &= ~(BIT_OF(UPPER)|BIT_OF(CHCASE));
flags |= BIT_OF(LOWER);
}