Subject: 24.0.50; sit-for 0.0 returns nil without user input

From: "Drew Adams" <[email-masked]>
Date: Sat, 5 Jun 2010 08:17:39 -0700

I see this problem systematically starting with Emacs 22 but never with
Emacs 20 or 21.
 
If the sit-for value is 0.0, then it can return nil even without user
input.  If the value is ever so slightly more than 0.0, e.g. 0.001, then
there is no problem.
 
This is using source code, not byte-compiled code, so it's not a
byte-compiler optimization that is causing the problem.
 
I do not have an emacs -Q recipe.  If you just eval (sit-for 0.0) it
returns t.  Executing some of the surrounding code I use also does not
reproduce the problem.  But in my setup (too much to reproduce) it
always returns nil for 0.0.
 
Dunno if maybe it's picking up some non-user event as if it were input.
I do know that without user input the return value is nil (in my
context).

In GNU Emacs 24.0.50.1 (i386-mingw-nt5.1.2600)
 of 2010-05-23 on G41R2F1
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4) --no-opt --cflags -Ic:/xpm/include'