Package: emacs;
Reported by: David Bremner <david <at> tethera.net>
Date: Tue, 21 Feb 2017 11:36:01 UTC
Severity: normal
Tags: fixed, patch
Merged with 29273
Found in versions 25.1, 25.2
Fixed in version 26.1
Done: Eli Zaretskii <eliz <at> gnu.org>
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 25828 in the body.
You can then email your comments to 25828 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#25828
; Package emacs
.
(Tue, 21 Feb 2017 11:36:01 GMT) Full text and rfc822 format available.David Bremner <david <at> tethera.net>
:bug-gnu-emacs <at> gnu.org
.
(Tue, 21 Feb 2017 11:36:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: David Bremner <david <at> tethera.net> To: bug-gnu-emacs <at> gnu.org Subject: 25.1; remaining errors from shr calling set-window-buffer-p in dedicated window Date: Tue, 21 Feb 2017 07:34:39 -0400
[Message part 1 (text/plain, inline)]
In https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24950 I reported an error resulting from shr calling set-window-buffer-p in a dedicated window. Eli provided a patch for that, which works great for that code path. Unfortunately there are at least two more places in the shr code with the same issue. A notmuch user reported crashes rendering html on one of those other code paths. I have not produced a recipe for duplicating the problem without notmuch, but copying Eli's patch into these other two code paths fixes the problem. I have attached the diff against emacs-25.2-rc1-14-gec4226d810. Both added calls to set-window-dedicated-p are inside save-window-excursion. It occurs to me that maybe save-window-excursion should call set-window-dedicated-p, but I don't know the full implications.
[shr-diff.diff (text/x-diff, inline)]
diff --git a/lisp/net/shr.el b/lisp/net/shr.el index 6c35a33c9c..2bc37c64bd 100644 --- a/lisp/net/shr.el +++ b/lisp/net/shr.el @@ -1993,6 +1993,9 @@ shr-pixel-buffer-width (if (get-buffer-window) (car (window-text-pixel-size nil (point-min) (point-max))) (save-window-excursion + ;; Avoid errors if the selected window is a dedicated one, + ;; and they just want to insert a document into it. + (set-window-dedicated-p nil nil) (set-window-buffer nil (current-buffer)) (car (window-text-pixel-size nil (point-min) (point-max))))))) @@ -2036,6 +2039,9 @@ shr-render-td-1 (shr-indentation 0)) (shr-descend dom)) (save-window-excursion + ;; Avoid errors if the selected window is a dedicated one, + ;; and they just want to insert a document into it. + (set-window-dedicated-p nil nil) (set-window-buffer nil (current-buffer)) (unless fill (setq natural-width
[Message part 3 (text/plain, inline)]
Configured using: 'configure --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --with-pop=yes --enable-locallisppath=/etc/emacs25:/etc/emacs:/usr/local/share/emacs/25.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/25.1/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --with-pop=yes --enable-locallisppath=/etc/emacs25:/etc/emacs:/usr/local/share/emacs/25.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/25.1/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --with-x=yes --with-x-toolkit=gtk3 --with-toolkit-scroll-bars 'CFLAGS=-g -O2 -fdebug-prefix-map=/build/emacs25-Fs4LPA/emacs25-25.1+1=. -fstack-protector-strong -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' LDFLAGS=-Wl,-z,relro' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 Important settings: value of $LANG: en_CA.UTF-8 locale-coding-system: utf-8-unix Major mode: notmuch-show Minor modes in effect: TeX-PDF-mode: t magit-auto-revert-mode: t global-git-commit-mode: t async-bytecomp-package-mode: t shell-dirtrack-mode: t diff-auto-refine-mode: t tracking-mode: t tooltip-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t line-number-mode: t visual-line-mode: t transient-mark-mode: t Recent messages: next-line: End of buffer [8 times] Mark set [3 times] Sending... Mark set [2 times] Sending via mail... Mark set Doing Fcc... Sending...done c 0 is undefined Stashed: id:87y40kw3f2.fsf <at> tethera.net Load-path shadows: /usr/share/emacs/25.1/site-lisp/elpa/jabber-0.8.92/fsm hides /usr/share/emacs/25.1/site-lisp/elpa/fsm-0.2.1/fsm /usr/share/emacs/25.1/site-lisp/elpa/magit-2.9.0/magit-popup hides /usr/share/emacs/25.1/site-lisp/elpa/magit-popup-2.9.0/magit-popup /usr/share/org-mode/lisp/htmlize hides /usr/share/emacs25/site-lisp/emacs-goodies-el/htmlize /home/bremner/.emacs.d/elpa/csv-mode-1.5/csv-mode hides /usr/share/emacs25/site-lisp/emacs-goodies-el/csv-mode /usr/share/emacs25/site-lisp/emacs-goodies-el/all hides /usr/share/emacs/25.1/site-lisp/elpa/company-0.8.12/all /usr/share/emacs25/site-lisp/cmake-data/cmake-mode hides /usr/share/emacs/site-lisp/cmake-mode /usr/share/emacs/25.1/site-lisp/debian-startup hides /usr/share/emacs/site-lisp/debian-startup /usr/share/emacs25/site-lisp/flim/hex-util hides /usr/share/emacs/25.1/lisp/hex-util /usr/share/emacs25/site-lisp/flim/md4 hides /usr/share/emacs/25.1/lisp/md4 /usr/share/emacs/site-lisp/rst hides /usr/share/emacs/25.1/lisp/textmodes/rst /usr/share/emacs25/site-lisp/org-mode/ob-table hides /usr/share/emacs/25.1/lisp/org/ob-table /usr/share/emacs25/site-lisp/org-mode/ob-mscgen hides /usr/share/emacs/25.1/lisp/org/ob-mscgen /usr/share/emacs25/site-lisp/org-mode/org-rmail hides /usr/share/emacs/25.1/lisp/org/org-rmail /usr/share/emacs25/site-lisp/org-mode/org-pcomplete hides /usr/share/emacs/25.1/lisp/org/org-pcomplete /usr/share/emacs25/site-lisp/org-mode/org-clock hides /usr/share/emacs/25.1/lisp/org/org-clock /usr/share/emacs25/site-lisp/org-mode/ox-beamer hides /usr/share/emacs/25.1/lisp/org/ox-beamer /usr/share/emacs25/site-lisp/org-mode/ob-sass hides /usr/share/emacs/25.1/lisp/org/ob-sass /usr/share/emacs25/site-lisp/org-mode/ob-fortran hides /usr/share/emacs/25.1/lisp/org/ob-fortran /usr/share/emacs25/site-lisp/org-mode/org-macs hides /usr/share/emacs/25.1/lisp/org/org-macs /usr/share/emacs25/site-lisp/org-mode/org-entities hides /usr/share/emacs/25.1/lisp/org/org-entities /usr/share/emacs25/site-lisp/org-mode/org-capture hides /usr/share/emacs/25.1/lisp/org/org-capture /usr/share/emacs25/site-lisp/org-mode/ob-lilypond hides /usr/share/emacs/25.1/lisp/org/ob-lilypond /usr/share/emacs25/site-lisp/org-mode/org-info hides /usr/share/emacs/25.1/lisp/org/org-info /usr/share/emacs25/site-lisp/org-mode/org-bbdb hides /usr/share/emacs/25.1/lisp/org/org-bbdb /usr/share/emacs25/site-lisp/org-mode/ob-js hides /usr/share/emacs/25.1/lisp/org/ob-js /usr/share/emacs25/site-lisp/org-mode/ob-dot hides /usr/share/emacs/25.1/lisp/org/ob-dot /usr/share/emacs25/site-lisp/org-mode/ob-ledger hides /usr/share/emacs/25.1/lisp/org/ob-ledger /usr/share/emacs25/site-lisp/org-mode/ox-md hides /usr/share/emacs/25.1/lisp/org/ox-md /usr/share/emacs25/site-lisp/org-mode/org-docview hides /usr/share/emacs/25.1/lisp/org/org-docview /usr/share/emacs25/site-lisp/org-mode/ob-plantuml hides /usr/share/emacs/25.1/lisp/org/ob-plantuml /usr/share/emacs25/site-lisp/org-mode/ob-awk hides /usr/share/emacs/25.1/lisp/org/ob-awk /usr/share/emacs25/site-lisp/org-mode/ob-clojure hides /usr/share/emacs/25.1/lisp/org/ob-clojure /usr/share/emacs25/site-lisp/org-mode/ob-screen hides /usr/share/emacs/25.1/lisp/org/ob-screen /usr/share/emacs25/site-lisp/org-mode/ob-eval hides /usr/share/emacs/25.1/lisp/org/ob-eval /usr/share/emacs25/site-lisp/org-mode/org-ctags hides /usr/share/emacs/25.1/lisp/org/org-ctags /usr/share/emacs25/site-lisp/org-mode/org-attach hides /usr/share/emacs/25.1/lisp/org/org-attach /usr/share/emacs25/site-lisp/org-mode/org-plot hides /usr/share/emacs/25.1/lisp/org/org-plot /usr/share/emacs25/site-lisp/org-mode/org-id hides /usr/share/emacs/25.1/lisp/org/org-id /usr/share/emacs25/site-lisp/org-mode/ob-gnuplot hides /usr/share/emacs/25.1/lisp/org/ob-gnuplot /usr/share/emacs25/site-lisp/org-mode/ob-emacs-lisp hides /usr/share/emacs/25.1/lisp/org/ob-emacs-lisp /usr/share/emacs25/site-lisp/org-mode/ob-makefile hides /usr/share/emacs/25.1/lisp/org/ob-makefile /usr/share/emacs25/site-lisp/org-mode/ob-maxima hides /usr/share/emacs/25.1/lisp/org/ob-maxima /usr/share/emacs25/site-lisp/org-mode/org-timer hides /usr/share/emacs/25.1/lisp/org/org-timer /usr/share/emacs25/site-lisp/org-mode/ox-odt hides /usr/share/emacs/25.1/lisp/org/ox-odt /usr/share/emacs25/site-lisp/org-mode/org-mouse hides /usr/share/emacs/25.1/lisp/org/org-mouse /usr/share/emacs25/site-lisp/org-mode/org-agenda hides /usr/share/emacs/25.1/lisp/org/org-agenda /usr/share/emacs25/site-lisp/org-mode/org-install hides /usr/share/emacs/25.1/lisp/org/org-install /usr/share/emacs25/site-lisp/org-mode/org-bibtex hides /usr/share/emacs/25.1/lisp/org/org-bibtex /usr/share/emacs25/site-lisp/org-mode/ob-scala hides /usr/share/emacs/25.1/lisp/org/ob-scala /usr/share/emacs25/site-lisp/org-mode/ob-haskell hides /usr/share/emacs/25.1/lisp/org/ob-haskell /usr/share/emacs25/site-lisp/org-mode/org-table hides /usr/share/emacs/25.1/lisp/org/org-table /usr/share/emacs25/site-lisp/org-mode/ob-ditaa hides /usr/share/emacs/25.1/lisp/org/ob-ditaa /usr/share/emacs25/site-lisp/org-mode/org-gnus hides /usr/share/emacs/25.1/lisp/org/org-gnus /usr/share/emacs25/site-lisp/org-mode/org-eshell hides /usr/share/emacs/25.1/lisp/org/org-eshell /usr/share/emacs25/site-lisp/org-mode/ob-picolisp hides /usr/share/emacs/25.1/lisp/org/ob-picolisp /usr/share/emacs25/site-lisp/org-mode/org-mhe hides /usr/share/emacs/25.1/lisp/org/org-mhe /usr/share/emacs25/site-lisp/org-mode/ox-texinfo hides /usr/share/emacs/25.1/lisp/org/ox-texinfo /usr/share/emacs25/site-lisp/org-mode/ob-keys hides /usr/share/emacs/25.1/lisp/org/ob-keys /usr/share/emacs25/site-lisp/org-mode/ob-octave hides /usr/share/emacs/25.1/lisp/org/ob-octave /usr/share/emacs25/site-lisp/org-mode/org-protocol hides /usr/share/emacs/25.1/lisp/org/org-protocol /usr/share/emacs25/site-lisp/org-mode/org-datetree hides /usr/share/emacs/25.1/lisp/org/org-datetree /usr/share/emacs25/site-lisp/org-mode/ob-core hides /usr/share/emacs/25.1/lisp/org/ob-core /usr/share/emacs25/site-lisp/org-mode/ob-lob hides /usr/share/emacs/25.1/lisp/org/ob-lob /usr/share/emacs25/site-lisp/org-mode/ob-latex hides /usr/share/emacs/25.1/lisp/org/ob-latex /usr/share/emacs25/site-lisp/org-mode/org-footnote hides /usr/share/emacs/25.1/lisp/org/org-footnote /usr/share/emacs25/site-lisp/org-mode/org-w3m hides /usr/share/emacs/25.1/lisp/org/org-w3m /usr/share/emacs25/site-lisp/org-mode/org-archive hides /usr/share/emacs/25.1/lisp/org/org-archive /usr/share/emacs25/site-lisp/org-mode/org-faces hides /usr/share/emacs/25.1/lisp/org/org-faces /usr/share/emacs25/site-lisp/org-mode/org-list hides /usr/share/emacs/25.1/lisp/org/org-list /usr/share/emacs25/site-lisp/org-mode/ob-comint hides /usr/share/emacs/25.1/lisp/org/ob-comint /usr/share/emacs25/site-lisp/org-mode/org-indent hides /usr/share/emacs/25.1/lisp/org/org-indent /usr/share/emacs25/site-lisp/org-mode/ob-org hides /usr/share/emacs/25.1/lisp/org/ob-org /usr/share/emacs25/site-lisp/org-mode/org-inlinetask hides /usr/share/emacs/25.1/lisp/org/org-inlinetask /usr/share/emacs25/site-lisp/org-mode/org-compat hides /usr/share/emacs/25.1/lisp/org/org-compat /usr/share/emacs25/site-lisp/org-mode/ob-io hides /usr/share/emacs/25.1/lisp/org/ob-io /usr/share/emacs25/site-lisp/org-mode/org-mobile hides /usr/share/emacs/25.1/lisp/org/org-mobile /usr/share/emacs25/site-lisp/org-mode/ob-scheme hides /usr/share/emacs/25.1/lisp/org/ob-scheme /usr/share/emacs25/site-lisp/org-mode/ob-python hides /usr/share/emacs/25.1/lisp/org/ob-python /usr/share/emacs25/site-lisp/org-mode/ox-html hides /usr/share/emacs/25.1/lisp/org/ox-html /usr/share/emacs25/site-lisp/org-mode/ob-java hides /usr/share/emacs/25.1/lisp/org/ob-java /usr/share/emacs25/site-lisp/org-mode/org-colview hides /usr/share/emacs/25.1/lisp/org/org-colview /usr/share/emacs25/site-lisp/org-mode/ob-ruby hides /usr/share/emacs/25.1/lisp/org/ob-ruby /usr/share/emacs25/site-lisp/org-mode/ox-latex hides /usr/share/emacs/25.1/lisp/org/ox-latex /usr/share/emacs25/site-lisp/org-mode/ox hides /usr/share/emacs/25.1/lisp/org/ox /usr/share/emacs25/site-lisp/org-mode/ob-ref hides /usr/share/emacs/25.1/lisp/org/ob-ref /usr/share/emacs25/site-lisp/org-mode/org-macro hides /usr/share/emacs/25.1/lisp/org/org-macro /usr/share/emacs25/site-lisp/org-mode/org hides /usr/share/emacs/25.1/lisp/org/org /usr/share/emacs25/site-lisp/org-mode/ob-css hides /usr/share/emacs/25.1/lisp/org/ob-css /usr/share/emacs25/site-lisp/org-mode/ob-shen hides /usr/share/emacs/25.1/lisp/org/ob-shen /usr/share/emacs25/site-lisp/org-mode/org-irc hides /usr/share/emacs/25.1/lisp/org/org-irc /usr/share/emacs25/site-lisp/org-mode/ob-sql hides /usr/share/emacs/25.1/lisp/org/ob-sql /usr/share/emacs25/site-lisp/org-mode/org-element hides /usr/share/emacs/25.1/lisp/org/org-element /usr/share/emacs25/site-lisp/org-mode/ob hides /usr/share/emacs/25.1/lisp/org/ob /usr/share/emacs25/site-lisp/org-mode/ob-sqlite hides /usr/share/emacs/25.1/lisp/org/ob-sqlite /usr/share/emacs25/site-lisp/org-mode/ox-publish hides /usr/share/emacs/25.1/lisp/org/ox-publish /usr/share/emacs25/site-lisp/org-mode/ob-tangle hides /usr/share/emacs/25.1/lisp/org/ob-tangle /usr/share/emacs25/site-lisp/org-mode/ob-lisp hides /usr/share/emacs/25.1/lisp/org/ob-lisp /usr/share/emacs25/site-lisp/org-mode/ob-exp hides /usr/share/emacs/25.1/lisp/org/ob-exp /usr/share/emacs25/site-lisp/org-mode/org-crypt hides /usr/share/emacs/25.1/lisp/org/org-crypt /usr/share/emacs25/site-lisp/org-mode/ob-perl hides /usr/share/emacs/25.1/lisp/org/ob-perl /usr/share/emacs25/site-lisp/org-mode/org-src hides /usr/share/emacs/25.1/lisp/org/org-src /usr/share/emacs25/site-lisp/org-mode/ox-icalendar hides /usr/share/emacs/25.1/lisp/org/ox-icalendar /usr/share/emacs25/site-lisp/org-mode/org-loaddefs hides /usr/share/emacs/25.1/lisp/org/org-loaddefs /usr/share/emacs25/site-lisp/org-mode/ob-ocaml hides /usr/share/emacs/25.1/lisp/org/ob-ocaml /usr/share/emacs25/site-lisp/org-mode/ox-ascii hides /usr/share/emacs/25.1/lisp/org/ox-ascii /usr/share/emacs25/site-lisp/org-mode/ob-R hides /usr/share/emacs/25.1/lisp/org/ob-R /usr/share/emacs25/site-lisp/org-mode/ob-C hides /usr/share/emacs/25.1/lisp/org/ob-C /usr/share/emacs25/site-lisp/org-mode/org-version hides /usr/share/emacs/25.1/lisp/org/org-version /usr/share/emacs25/site-lisp/org-mode/ob-asymptote hides /usr/share/emacs/25.1/lisp/org/ob-asymptote /usr/share/emacs25/site-lisp/org-mode/org-habit hides /usr/share/emacs/25.1/lisp/org/org-habit /usr/share/emacs25/site-lisp/org-mode/ob-matlab hides /usr/share/emacs/25.1/lisp/org/ob-matlab /usr/share/emacs25/site-lisp/org-mode/ox-org hides /usr/share/emacs/25.1/lisp/org/ox-org /usr/share/emacs25/site-lisp/org-mode/ox-man hides /usr/share/emacs/25.1/lisp/org/ox-man /usr/share/emacs25/site-lisp/org-mode/ob-calc hides /usr/share/emacs/25.1/lisp/org/ob-calc /usr/share/emacs25/site-lisp/org-mode/org-feed hides /usr/share/emacs/25.1/lisp/org/org-feed /usr/share/emacs25/site-lisp/flim/sasl-cram hides /usr/share/emacs/25.1/lisp/net/sasl-cram /usr/share/emacs25/site-lisp/flim/sasl hides /usr/share/emacs/25.1/lisp/net/sasl /usr/share/emacs25/site-lisp/flim/sasl-digest hides /usr/share/emacs/25.1/lisp/net/sasl-digest /usr/share/emacs25/site-lisp/flim/sasl-ntlm hides /usr/share/emacs/25.1/lisp/net/sasl-ntlm /usr/share/emacs25/site-lisp/flim/hmac-def hides /usr/share/emacs/25.1/lisp/net/hmac-def /usr/share/emacs25/site-lisp/flim/hmac-md5 hides /usr/share/emacs/25.1/lisp/net/hmac-md5 /usr/share/emacs25/site-lisp/flim/ntlm hides /usr/share/emacs/25.1/lisp/net/ntlm /usr/share/emacs/25.1/site-lisp/elpa/let-alist-1.0.4/let-alist hides /usr/share/emacs/25.1/lisp/emacs-lisp/let-alist /usr/share/emacs/25.1/site-lisp/elpa/seq-2.19/seq hides /usr/share/emacs/25.1/lisp/emacs-lisp/seq /usr/share/emacs25/site-lisp/auctex/prv-emacs hides /usr/share/emacs/site-lisp/auctex/prv-emacs /usr/share/emacs25/site-lisp/auctex/context-nl hides /usr/share/emacs/site-lisp/auctex/context-nl /usr/share/emacs25/site-lisp/auctex/tex-style hides /usr/share/emacs/site-lisp/auctex/tex-style /usr/share/emacs25/site-lisp/auctex/font-latex hides /usr/share/emacs/site-lisp/auctex/font-latex /usr/share/emacs25/site-lisp/auctex/tex-mik hides /usr/share/emacs/site-lisp/auctex/tex-mik /usr/share/emacs25/site-lisp/auctex/tex-bar hides /usr/share/emacs/site-lisp/auctex/tex-bar /usr/share/emacs25/site-lisp/auctex/tex hides /usr/share/emacs/site-lisp/auctex/tex /usr/share/emacs25/site-lisp/auctex/context-en hides /usr/share/emacs/site-lisp/auctex/context-en /usr/share/emacs25/site-lisp/auctex/tex-jp hides /usr/share/emacs/site-lisp/auctex/tex-jp /usr/share/emacs25/site-lisp/auctex/tex-font hides /usr/share/emacs/site-lisp/auctex/tex-font /usr/share/emacs25/site-lisp/auctex/tex-buf hides /usr/share/emacs/site-lisp/auctex/tex-buf /usr/share/emacs25/site-lisp/auctex/bib-cite hides /usr/share/emacs/site-lisp/auctex/bib-cite /usr/share/emacs25/site-lisp/auctex/tex-info hides /usr/share/emacs/site-lisp/auctex/tex-info /usr/share/emacs25/site-lisp/auctex/plain-tex hides /usr/share/emacs/site-lisp/auctex/plain-tex /usr/share/emacs25/site-lisp/auctex/texmathp hides /usr/share/emacs/site-lisp/auctex/texmathp /usr/share/emacs25/site-lisp/auctex/preview hides /usr/share/emacs/site-lisp/auctex/preview /usr/share/emacs25/site-lisp/auctex/context hides /usr/share/emacs/site-lisp/auctex/context /usr/share/emacs25/site-lisp/auctex/tex-fold hides /usr/share/emacs/site-lisp/auctex/tex-fold /usr/share/emacs25/site-lisp/auctex/multi-prompt hides /usr/share/emacs/site-lisp/auctex/multi-prompt /usr/share/emacs25/site-lisp/auctex/toolbar-x hides /usr/share/emacs/site-lisp/auctex/toolbar-x /usr/share/emacs25/site-lisp/auctex/latex hides /usr/share/emacs/site-lisp/auctex/latex Features: (shadow emacsbug browse-kill-ring pcmpl-unix pcmpl-gnu debian-bug debian-changelog-mode calccomp calc-arith calc-misc calc-map calc-stat calc-vec calc-aent dired-aux texmathp preview prv-emacs tex-buf font-latex latex tex-style tex dbus xml tex-mode latexenc bookmark pp org-capture gnus-art mm-uu mml2015 gnus-sum gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo gnus-spec gnus-int gnus-range gnus-win gnus gnus-ems nnheader inline url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf rst derived disp-table org-colview calc-undo calc-alg calc-ext calc-menu calc calc-loaddefs calc-macs org-table filecache network-stream nsm starttls racket-mode racket-bug-report racket-collection tq racket-profile racket-imenu imenu racket-edit hideshow racket-complete racket-repl ido racket-common racket-indent racket-font-lock racket-util racket-keywords-and-builtins racket-custom parse-time qp tabify ledger-mode ledger-check ledger-schedule ledger-xact ledger-texi ledger-test ledger-sort ledger-report ledger-reconcile ledger-post ledger-occur ledger-init ledger-fontify ledger-state ledger-navigate ledger-fonts ledger-exec ledger-context ledger-complete ledger-commodities esh-var esh-io esh-cmd esh-opt esh-ext esh-proc esh-groups eshell esh-module esh-mode esh-arg esh-util cus-edit cus-start cus-load ledger-regex debug eieio-opt speedbar sb-image ezimage dframe cal-move markdown-mode make-mode message-templ sh-script smie executable grep magit-blame magit-stash magit-bisect magit-remote magit-commit magit-sequence magit magit-apply magit-wip magit-log magit-diff smerge-mode magit-core magit-autorevert autorevert filenotify magit-process magit-margin magit-mode magit-git magit-section magit-utils magit-popup git-commit log-edit pcvs-util add-log with-editor async-bytecomp async tramp-sh whitespace compile misearch multi-isearch cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs org-clock view cal-china lunar solar cal-dst cal-bahai cal-islam cal-hebrew holidays hol-loaddefs cal-iso vc-git org-rmail org-mhe org-irc org-info org-gnus org-docview doc-view jka-compr image-mode org-bibtex bibtex org-bbdb org-w3m org-agenda mm-archive url-util url-parse url-vars shr-color shr dom subr-x browse-url sendmail sort company-files company-oddmuse company-keywords company-etags etags xref project company-gtags company-dabbrev-code company-dabbrev company-capf company-cmake company-ropemacs company-xcode company-clang company-semantic company-eclim company-template company-css company-nxml company-bbdb company mail-extr edmacro kmacro notmuch-jump notmuch hl-line notmuch-message notmuch-hello wid-edit notmuch-tree notmuch-show notmuch-print notmuch-crypto notmuch-mua notmuch-draft notmuch-maildir-fcc notmuch-address notmuch-company notmuch-parser notmuch-wash coolj notmuch-query goto-addr icalendar diary-lib diary-loaddefs notmuch-tag crm notmuch-lib notmuch-version notmuch-compat cl message dired rfc822 mml mailabbrev mail-utils gmm-utils mailheader mm-view mml-smime mml-sec epg smime dig mm-decode mm-bodies mm-encode mailcap mail-parse rfc2231 rfc2047 rfc2045 ietf-drums cursor-sensor minibuffer-complete-cycle server indirect-region tempo org-notmuch org-element avl-tree org org-macro org-footnote org-pcomplete org-list org-faces org-entities noutline outline org-version ob-emacs-lisp ob ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp ob-comint tramp tramp-compat auth-source cl-seq eieio eieio-core cl-macs gnus-util time-date mm-util help-fns mail-prsvr password-cache tramp-loaddefs trampver shell pcomplete comint ansi-color ob-core ob-eval org-compat org-macs org-loaddefs format-spec find-func cal-menu calendar cal-loaddefs rx vc vc-dispatcher circe-color-nicks color circe-chanop circe advice diff-mode lui-irc-colors irc make-tls-process tls gnutls lcs lui-format lui tracking shorten thingatpt paren flyspell ispell ring circe-compat finder-inf muse-autoloads package epg-config seq seq-25 byte-opt gv bytecomp byte-compile cl-extra help-mode easymenu cconv cl-loaddefs pcase cl-lib debian-el debian-el-loaddefs s ucs-normalize org-install haskell-mode-autoloads emacs-goodies-el emacs-goodies-custom emacs-goodies-loaddefs easy-mmode dpkg-dev-el dpkg-dev-el-loaddefs dash-functional dash preview-latex tex-site auto-loads mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese charscript case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote dbusbind inotify dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 3519340 235888) (symbols 48 64348 2) (miscs 40 46989 3711) (strings 32 313297 125973) (string-bytes 1 12186097) (vectors 16 118270) (vector-slots 8 2459973 123628) (floats 8 5420 3349) (intervals 56 309816 4143) (buffers 976 335))
[signature.asc (application/pgp-signature, inline)]
bug-gnu-emacs <at> gnu.org
:bug#25828
; Package emacs
.
(Sat, 25 Feb 2017 08:28:02 GMT) Full text and rfc822 format available.Message #8 received at 25828 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: David Bremner <david <at> tethera.net>, Lars Ingebrigtsen <larsi <at> gnus.org> Cc: 25828 <at> debbugs.gnu.org Subject: Re: bug#25828: 25.1; remaining errors from shr calling set-window-buffer-p in dedicated window Date: Sat, 25 Feb 2017 10:27:02 +0200
> From: David Bremner <david <at> tethera.net> > Date: Tue, 21 Feb 2017 07:34:39 -0400 > > In https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24950 I reported an > error resulting from shr calling set-window-buffer-p in a dedicated > window. Eli provided a patch for that, which works great for that code > path. Unfortunately there are at least two more places in the shr code > with the same issue. A notmuch user reported crashes rendering html on > one of those other code paths. I have not produced a recipe for > duplicating the problem without notmuch, but copying Eli's patch into > these other two code paths fixes the problem. I have attached the diff > against emacs-25.2-rc1-14-gec4226d810. Both added calls to > set-window-dedicated-p are inside save-window-excursion. It occurs to > me that maybe save-window-excursion should call set-window-dedicated-p, > but I don't know the full implications. > > diff --git a/lisp/net/shr.el b/lisp/net/shr.el > index 6c35a33c9c..2bc37c64bd 100644 > --- a/lisp/net/shr.el > +++ b/lisp/net/shr.el > @@ -1993,6 +1993,9 @@ shr-pixel-buffer-width > (if (get-buffer-window) > (car (window-text-pixel-size nil (point-min) (point-max))) > (save-window-excursion > + ;; Avoid errors if the selected window is a dedicated one, > + ;; and they just want to insert a document into it. > + (set-window-dedicated-p nil nil) > (set-window-buffer nil (current-buffer)) > (car (window-text-pixel-size nil (point-min) (point-max))))))) > > @@ -2036,6 +2039,9 @@ shr-render-td-1 > (shr-indentation 0)) > (shr-descend dom)) > (save-window-excursion > + ;; Avoid errors if the selected window is a dedicated one, > + ;; and they just want to insert a document into it. > + (set-window-dedicated-p nil nil) > (set-window-buffer nil (current-buffer)) > (unless fill > (setq natural-width Lars, any objections to pushing this?
Eli Zaretskii <eliz <at> gnu.org>
:David Bremner <david <at> tethera.net>
:Message #13 received at 25828-done <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: larsi <at> gnus.org Cc: david <at> tethera.net, 25828-done <at> debbugs.gnu.org Subject: Re: bug#25828: 25.1; remaining errors from shr calling set-window-buffer-p in dedicated window Date: Sat, 04 Mar 2017 12:21:30 +0200
> Date: Sat, 25 Feb 2017 10:27:02 +0200 > From: Eli Zaretskii <eliz <at> gnu.org> > Cc: 25828 <at> debbugs.gnu.org > > Lars, any objections to pushing this? No further comments, so I pushed these changes to the master branch, and I'm marking this bug done.
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Sat, 01 Apr 2017 11:24:04 GMT) Full text and rfc822 format available.Noam Postavsky <npostavs <at> users.sourceforge.net>
to control <at> debbugs.gnu.org
.
(Sun, 12 Nov 2017 14:16:02 GMT) Full text and rfc822 format available.Noam Postavsky <npostavs <at> users.sourceforge.net>
to control <at> debbugs.gnu.org
.
(Sun, 12 Nov 2017 14:16:02 GMT) Full text and rfc822 format available.Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Mon, 11 Dec 2017 12:24:04 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.