[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


From: N. Raghavendra
Subject: timezone-parse-date
Date: 09 Jul 2005 11:13:37 +0530
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3

This bug report will be sent to the Free Software Foundation,
not to your local site managers!
Please write in English, because the Emacs maintainers do not have
translators to read other languages for them.

Your bug report will be posted to the address@hidden mailing list,
and to the gnu.emacs.bug news group.

In GNU Emacs 21.3.1 (i386--freebsd, X toolkit, Xaw3d scroll bars)
 of 2005-07-02 on riemann.mri.ernet.in
configured using `configure  --x-libraries=/usr/X11R6/lib 
--x-includes=/usr/X11R6/include --prefix=/usr/local i386--freebsd'
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  locale-coding-system: nil
  default-enable-multibyte-characters: t

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

The form

  (timezone-parse-date "Fri, 17 Mar 89 4:01:33")

evaluates to the vector

  ["1989" "3" "17" "4:01:3" "3"]

The documentation for the function says

  "Parse DATE and return a vector [YEAR MONTH DAY TIME TIMEZONE].  ...
   TIMEZONE is nil for DATEs without a zone field."

Therefore, the last element of the above vector should be `nil'.

As I understand, the problem is caused by the first regular expression
in the `cond' expression in `timezone-parse-date'.  The following
patch seems to solve the problem:

diff -ruN emacs/lisp/timezone.el emacs-new/lisp/timezone.el
--- emacs/lisp/timezone.el      Fri Jul  8 16:54:48 2005
+++ emacs-new/lisp/timezone.el  Fri Jul  8 16:56:05 2005
@@ -149,7 +149,7 @@
        (time nil)
        (zone nil))                     ;This may be nil.
     (cond ((string-match
-           "\\([0-9]+\\)[ \t]+\\([^ \t,]+\\)[ \t]+\\([0-9]+\\)[ 
\t]+\\([0-9]+:[0-9:]+\\)[ \t]*\\([-+a-zA-Z0-9]+\\)" date)
+           "\\([0-9]+\\)[ \t]+\\([^ \t,]+\\)[ \t]+\\([0-9]+\\)[ 
\t]+\\([0-9]+:[0-9:]+\\)[ \t]+\\([-+a-zA-Z0-9]+\\)" date)
           ;; Styles: (1) and (2) with timezone and buggy timezone
           ;; This is most common in mail and news,
           ;; so it is worth trying first.

Here is the change log entry, in case the above change is used:

2005-07-09  N. Raghavendra  <address@hidden>

        * timezone.el (timezone-parse-date): Changed the first regexp
          in the `cond' expression.

I use Emacs 21.3, but I notice that the regexp is the same in the CVS
version.  Therefore, I am sending a copy of this message to
address@hidden' too.


N. Raghavendra <address@hidden> | See message headers for contact
Harish-Chandra Research Institute   | and OpenPGP details.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]