all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Ken Brown <kbrown@cornell.edu>
To: Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: Time zone problem in cygwin
Date: Thu, 05 Feb 2009 17:36:44 -0500	[thread overview]
Message-ID: <498B69FC.4090607@cornell.edu> (raw)
In-Reply-To: <utz78ty8t.fsf@gnu.org>

On 2/5/2009 3:38 PM, Eli Zaretskii wrote:
>> Date: Thu, 05 Feb 2009 09:47:00 -0500
>> From: Ken Brown <kbrown@cornell.edu>
>>
>>     http://lists.gnu.org/archive/html/emacs-devel/2008-11/msg00532.html
>>
>> Eli Zaretskii replied and asked for the value of (format-time-string 
>> "%Y-%m-%d %T %z").   The OP never responded, but the answer for me is 
>> the following:  emacs 23 incorrectly reports 2009-02-05 13:35:36 -0100, 
>> whereas emacs 22.3 correctly gives 2009-02-05 09:36:13 -0500 a few 
>> seconds later.  One further detail:  emacs 23 gives the right time if I 
>> set TZ=America/New_York prior to starting emacs; but my understanding is 
>> that it's not supposed to be necessary to set TZ.
> 
> Unfortunately, I don't have Cygwin installed, so I'm forced to ask
> you: can you please step through format-time-string in both Emacs 22.3
> and Emacs 23, and see where does the difference come from?

I have virtually no experience with gdb, but I looked at the gdb 
documentation and made an attempt.  I can't make sense of the result. 
What I did was to look at the C source where format-time-string is 
defined, and I saw the C function synchronize_system_time_locale nearby. 
  This led me to try the following gdb session:

$ gdb /usr/local/bin/emacs
[...]
(gdb) break  synchronize_system_time_locale
Breakpoint 1 at 0x4b51c6: file emacs.c, line 2429.
(gdb) run -Q
Starting program: /usr/local/bin/emacs.exe -Q
[New thread 2500.0x1128]
[New thread 2500.0xc0c]
[New thread 2500.0xddc]
[New thread 2500.0x13a0]
[New thread 2500.0x1414]

[At this point I had emacs evaluate (format-time-string "%Y-%m-%d %T 
%z"), triggering the breakpoint]

Breakpoint 1, synchronize_system_time_locale () at emacs.c:2429
2429      synchronize_locale (LC_TIME, &Vprevious_system_time_locale,

I then repeatedly pressed 's' to step through the program, and I didn't 
see anything interesting, or anything different between emacs 22.3 and 
emacs 23, so finally I just pressed 'c' to continue.  At this point 
emacs displayed the result of the evaluation, and it gave the correct 
time!  I've rechecked this several times, and emacs 23 gives the right 
time when it's run under gdb (with or without a breakpoint), and the 
wrong time otherwise.  Do you have any idea what could be going on?

If there's anything else I should try under gdb, please give me detailed 
instructions.  As you can see, I don't know much about debugging.

> Btw, were both binaries compiled with the same versions of the Cygwin
> runtime libraries?

I rebuilt emacs 22.3 before trying the debugging above, so I do have two 
binaries compiled with the same libraries.  And it remains true that 
emacs 22.3 displays the correct time, even when not run under gdb.

Ken





  reply	other threads:[~2009-02-05 22:36 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-02-05 14:47 Time zone problem in cygwin Ken Brown
2009-02-05 20:38 ` Eli Zaretskii
2009-02-05 22:36   ` Ken Brown [this message]
2009-02-06  6:24     ` Eli Zaretskii
  -- strict thread matches above, loose matches on Subject: below --
2009-02-06 16:29 Angelo Graziosi
2009-02-06 16:50 ` Ken Brown
2009-02-06 17:40 ` Ken Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=498B69FC.4090607@cornell.edu \
    --to=kbrown@cornell.edu \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.