GNU bug report logs -
#18347
24.3.93; Incomplete splash screen display on Cygwin-w32 build
Previous Next
Reported by: Ken Brown <kbrown <at> cornell.edu>
Date: Thu, 28 Aug 2014 21:52:02 UTC
Severity: normal
Found in version 24.3.93
Fixed in version 24.3.94
Done: Ken Brown <kbrown <at> cornell.edu>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 18347 in the body.
You can then email your comments to 18347 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#18347
; Package
emacs
.
(Thu, 28 Aug 2014 21:52:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Ken Brown <kbrown <at> cornell.edu>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Thu, 28 Aug 2014 21:52:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
When I start up the Cygwin-w32 build of emacs, the image at the top of
the splash screen often fails to display. The following patch fixes it:
=== modified file 'lisp/startup.el'
--- lisp/startup.el 2014-07-08 09:17:09 +0000
+++ lisp/startup.el 2014-08-28 20:07:20 +0000
@@ -1812,7 +1812,7 @@
(let (chosen-frame)
;; MS-Windows needs this to have a chance to make the initial
;; frame visible.
- (if (eq system-type 'windows-nt)
+ (if (eq window-system 'w32)
(sit-for 0 t))
(dolist (frame (append (frame-list) (list (selected-frame))))
(if (and (frame-visible-p frame)
Is this still OK for the native Windows build? If so, is it OK to
install it in the release branch?
In GNU Emacs 24.3.93.2 (x86_64-unknown-cygwin)
of 2014-08-28 on moufang
Repository revision: 117464 rgm <at> gnu.org-20140828191824-o5hn2x503w527yhn
Windowing system distributor `Microsoft Corp.', version 6.1.7601
Configured using:
`configure --with-w32 --enable-checking=yes,glyphs 'CFLAGS=-g3 -O0''
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#18347
; Package
emacs
.
(Fri, 29 Aug 2014 06:25:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 18347 <at> debbugs.gnu.org (full text, mbox):
> Date: Thu, 28 Aug 2014 17:51:06 -0400
> From: Ken Brown <kbrown <at> cornell.edu>
>
> --- lisp/startup.el 2014-07-08 09:17:09 +0000
> +++ lisp/startup.el 2014-08-28 20:07:20 +0000
> @@ -1812,7 +1812,7 @@
> (let (chosen-frame)
> ;; MS-Windows needs this to have a chance to make the initial
> ;; frame visible.
> - (if (eq system-type 'windows-nt)
> + (if (eq window-system 'w32)
> (sit-for 0 t))
> (dolist (frame (append (frame-list) (list (selected-frame))))
> (if (and (frame-visible-p frame)
It is fundamentally wrong to use window-system the variable in such
circumstances (or almost any other). Please use the function instead.
> Is this still OK for the native Windows build? If so, is it OK to
> install it in the release branch?
Yes and yes. Although I'd urge you to try to figure out why this is
needed in the cygwin-w32 build (the native-build problem which led to
this code manifested itself in a rather different way, see bug#16014).
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#18347
; Package
emacs
.
(Fri, 29 Aug 2014 15:09:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 18347 <at> debbugs.gnu.org (full text, mbox):
On 8/29/2014 2:25 AM, Eli Zaretskii wrote:
>> Date: Thu, 28 Aug 2014 17:51:06 -0400
>> From: Ken Brown <kbrown <at> cornell.edu>
>>
>> --- lisp/startup.el 2014-07-08 09:17:09 +0000
>> +++ lisp/startup.el 2014-08-28 20:07:20 +0000
>> @@ -1812,7 +1812,7 @@
>> (let (chosen-frame)
>> ;; MS-Windows needs this to have a chance to make the initial
>> ;; frame visible.
>> - (if (eq system-type 'windows-nt)
>> + (if (eq window-system 'w32)
>> (sit-for 0 t))
>> (dolist (frame (append (frame-list) (list (selected-frame))))
>> (if (and (frame-visible-p frame)
>
> It is fundamentally wrong to use window-system the variable in such
> circumstances (or almost any other). Please use the function instead.
OK. But could you explain why? TIA.
>> Is this still OK for the native Windows build? If so, is it OK to
>> install it in the release branch?
>
> Yes and yes. Although I'd urge you to try to figure out why this is
> needed in the cygwin-w32 build (the native-build problem which led to
> this code manifested itself in a rather different way, see bug#16014).
Actually, the visual symptom I'm describing (failure of the logo to
appear) is identical to what Juanma reported in that bug. Your message
in that bug discussion says, "It's again that timing thing with making
the initial frame visible." The "again" suggests that there is an
earlier bug report or discussion about that. Can you give me a
reference or just explain what you meant by that?
Ken
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#18347
; Package
emacs
.
(Fri, 29 Aug 2014 19:43:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 18347 <at> debbugs.gnu.org (full text, mbox):
> Date: Fri, 29 Aug 2014 11:08:21 -0400
> From: Ken Brown <kbrown <at> cornell.edu>
> CC: 18347 <at> debbugs.gnu.org
>
> On 8/29/2014 2:25 AM, Eli Zaretskii wrote:
> >> Date: Thu, 28 Aug 2014 17:51:06 -0400
> >> From: Ken Brown <kbrown <at> cornell.edu>
> >>
> >> --- lisp/startup.el 2014-07-08 09:17:09 +0000
> >> +++ lisp/startup.el 2014-08-28 20:07:20 +0000
> >> @@ -1812,7 +1812,7 @@
> >> (let (chosen-frame)
> >> ;; MS-Windows needs this to have a chance to make the initial
> >> ;; frame visible.
> >> - (if (eq system-type 'windows-nt)
> >> + (if (eq window-system 'w32)
> >> (sit-for 0 t))
> >> (dolist (frame (append (frame-list) (list (selected-frame))))
> >> (if (and (frame-visible-p frame)
> >
> > It is fundamentally wrong to use window-system the variable in such
> > circumstances (or almost any other). Please use the function instead.
>
> OK. But could you explain why? TIA.
Because we don't want to risk assigning it a value. Also, the
function can accept a frame argument, thus giving you a chance to
inquire about a specific frame (different frames can have different
window-system values).
And if you use window-system as a predicate (not in this case,
obviously), you should use the various display-*-p predicates instead.
> >> Is this still OK for the native Windows build? If so, is it OK to
> >> install it in the release branch?
> >
> > Yes and yes. Although I'd urge you to try to figure out why this is
> > needed in the cygwin-w32 build (the native-build problem which led to
> > this code manifested itself in a rather different way, see bug#16014).
>
> Actually, the visual symptom I'm describing (failure of the logo to
> appear) is identical to what Juanma reported in that bug.
OK, but that's not what your original description said.
> Your message in that bug discussion says, "It's again that timing
> thing with making the initial frame visible." The "again" suggests
> that there is an earlier bug report or discussion about that. Can
> you give me a reference or just explain what you meant by that?
Bug#14841, I think.
Basically, since creating a frame on w32 takes some time until the OS
sets up the message pump for the new frame, Lisp code that creates a
frame and immediately proceeds with manipulating the new frame might
sometimes need sit-for to let the dust settle.
Reply sent
to
Ken Brown <kbrown <at> cornell.edu>
:
You have taken responsibility.
(Fri, 29 Aug 2014 22:18:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Ken Brown <kbrown <at> cornell.edu>
:
bug acknowledged by developer.
(Fri, 29 Aug 2014 22:18:02 GMT)
Full text and
rfc822 format available.
Message #19 received at 18347-done <at> debbugs.gnu.org (full text, mbox):
Version: 24.3.94
> Basically, since creating a frame on w32 takes some time until the OS
> sets up the message pump for the new frame, Lisp code that creates a
> frame and immediately proceeds with manipulating the new frame might
> sometimes need sit-for to let the dust settle.
So it seems that the current bug probably has the same cause as
bug#16014. I've installed the fix (but using the window-system
function) in the release branch as bzr revision 117465.
Ken
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Sat, 27 Sep 2014 11:24:03 GMT)
Full text and
rfc822 format available.
This bug report was last modified 10 years and 262 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.