? 494434-10-fix.patch
? 494434-10-patch.patch
Index: common.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/common.inc,v
retrieving revision 1.756.2.97
diff -u -p -r1.756.2.97 common.inc
--- common.inc	11 Aug 2010 21:10:41 -0000	1.756.2.97
+++ common.inc	4 Sep 2010 13:18:25 -0000
@@ -1302,9 +1302,10 @@ function format_interval($timestamp, $gr
  *   The format to use. Can be "small", "medium" or "large" for the preconfigured
  *   date formats. If "custom" is specified, then $format is required as well.
  * @param $format
- *   A PHP date format string as required by date(). A backslash should be used
- *   before a character to avoid interpreting the character as part of a date
- *   format.
+ *   A PHP date format string as required by date(), with the exception of
+ *   "c", "e", "P", "T." See http://drupal.org/node/494434 A backslash should
+ *   be used before a character to avoid interpreting the character as part of
+ *   a date format.
  * @param $timezone
  *   Time zone offset in seconds; if omitted, the user's time zone is used.
  * @param $langcode
@@ -1354,9 +1355,12 @@ function format_date($timestamp, $type =
       // different abbreviations.
       $date .= trim(t('!long-month-name '. gmdate($c, $timestamp), array('!long-month-name' => ''), $langcode));
     }
-    else if (strpos('BdgGhHiIjLmnsStTUwWYyz', $c) !== FALSE) {
+    else if (strpos('BdgGhHiIjLmnsStUwWYyz', $c) !== FALSE) {
       $date .= gmdate($c, $timestamp);
     }
+    else if (strpos('TePc', $c) !== FALSE) {
+      $date .= date($c, $timestamp);
+    }
     else if ($c == 'r') {
       $date .= format_date($timestamp - $timezone, 'custom', 'D, d M Y H:i:s O', $timezone, $langcode);
     }
