GNU bug report logs -
#33498
26.1; Unable to delete minibuffer-only+child frames
Previous Next
Reported by: Andreas Politz <politza <at> hochschule-trier.de>
Date: Sun, 25 Nov 2018 11:45:01 UTC
Severity: normal
Tags: fixed
Found in version 26.1
Fixed in version 27.1
Done: martin rudalics <rudalics <at> gmx.at>
Bug is archived. No further changes may be made.
Full log
Message #35 received at 33498 <at> debbugs.gnu.org (full text, mbox):
> Unfortunately the fix broke builds configured with
> --enable-gcc-warnings, as GCC complains about the use of an
> uninitialized variable that appears to be a typo in the fix. I installed
> the attached patch to unbreak the build; please check it to make sure
> that I understood the intent of the fix correctly.
Many thanks for catching this, your fix is correct. Unfortunately,
it's impossible for me to trigger a crash in a running Emacs since
frame1 apparently gets assigned the "correct" value in one of the
loops executed before. Using these initial settings
(setq initial-frame-alist '((minibuffer . child-frame)))
(setq default-frame-alist '((minibuffer)))
and subsequently evaluating
;; Assign initial and minibuffer frame.
(setq initial-frame (selected-frame))
(setq minibuffer-frame (window-frame (minibuffer-window)))
;; Make a new frame whose minibuffer window should be on
;; minibuffer-frame.
(make-frame)
;; Make minibuffer frame invisible.
(make-frame-invisible minibuffer-frame)
;; Delete initial frame.
(delete-frame initial-frame)
the last one could trigger a crash but minibuffer-frame just becomes
visible as expected because frame1 _is_ minibuffer_child_frame there.
> It's a good idea to use './configure --enable-gcc-warnings' when making
> changes to the C code in Emacs, as GCC is reasonably good at catching
> typos like this, and typically does not generate too many false alarms.
I build with
Configured using:
'configure --prefix=/c/emacs-git/trunk/dbg --with-gnutls=no
--without-pop --enable-checking=yes --enable-gcc-warnings=warn-only
--enable-check-lisp-object-type=warn-only 'CFLAGS=-O0 -g3
-Wno-logical-op''
ever since but it seems that gcc 4.8.1 is simply too old to catch such
subtle bugs (just verified by building with the buggy version again).
Thanks again for the fix, martin
This bug report was last modified 6 years and 89 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.