GNU bug report logs - #37198
26.2; Infinite recursion in eshell/clear with em-smart

Previous Next

Package: emacs;

Reported by: Daniel Sockwell <daniel <at> codesections.com>

Date: Tue, 27 Aug 2019 13:43:02 UTC

Severity: normal

Tags: confirmed, fixed, patch

Merged with 31326

Found in versions 25, 26.2, 27.0.50

Fixed in version 27.1

Done: Noam Postavsky <npostavs <at> gmail.com>

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 37198 in the body.
You can then email your comments to 37198 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


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#37198; Package emacs. (Tue, 27 Aug 2019 13:43:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Daniel Sockwell <daniel <at> codesections.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 27 Aug 2019 13:43:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Daniel Sockwell <daniel <at> codesections.com>
To: "bug-gnu-emacs <at> gnu.org" <bug-gnu-emacs <at> gnu.org>
Subject: 26.2; Infinite recursion in eshell/clear with em-smart
Date: Tue, 27 Aug 2019 13:41:43 +0000
Hi all,

I encountered the following reproducible bug earlier today and, to my
knowledge, it has not yet been reported.  Here is the bug:

The `eshell/clear` command triggers an infinite recursion and prints
6,599 lines when em-smart mode is active.

Steps to reproduce:

1) Use the following config:

    (require 'eshell)
    (require 'em-smart)
    (add-hook 'eshell-mode-hook 'eshell-smart-initialize)

2) M-x eshell

3) Enter `clear` at the eshell prompt


Expected behavior:

The contents of the eshell buffer are scrolled by a single page, leaving
a blank window.


Actual behavior:

The contents of the eshell buffer are scrolled by 6,599 lines and the
message "Error during redisplay: (eval (mode-line-eol-desc)) signaled
(error "Lisp nesting exceeds ‘max-lisp-eval-depth’")" is echoed.

Info from M-x report-emacs-bug is below.

Best regards,
Daniel




In GNU Emacs 26.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.8)
 of 2019-04-12 built on juergen
System Description:	Antergos Linux

Recent messages:
Error during redisplay: (eval (mode-line-eol-desc)) signaled (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
Error during redisplay: (eval (if (frame-parameter nil (quote client)) "@" "")) signaled (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
Error during redisplay: (eval (unless (display-graphic-p) "-%-")) signaled (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
redisplay--pre-redisplay-functions: (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
Error during redisplay: (eval (unless (display-graphic-p) "-%-")) signaled (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
Quit
Making completion list...
Mark set
Undo!
Making completion list...

Configured using:
 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
 --localstatedir=/var --with-x-toolkit=gtk3 --with-xft --with-modules
 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong
 -fno-plt' CPPFLAGS=-D_FORTIFY_SOURCE=2
 LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD LCMS2

Important settings:
  value of $LC_COLLATE: en_US.UTF-8
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Emacs-Lisp

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-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
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
/home/dsock/.emacs.d/elpa/soap-client-3.1.5/soap-inspect hides /usr/share/emacs/26.2/lisp/net/soap-inspect
/home/dsock/.emacs.d/elpa/soap-client-3.1.5/soap-client hides /usr/share/emacs/26.2/lisp/net/soap-client

Features:
(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
format-spec rfc822 mml mml-sec epa derived epg gnus-util rmail
rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils em-unix em-term term disp-table ehelp
em-script em-prompt em-ls em-hist em-pred em-glob em-dirs em-cmpl
em-basic em-banner em-alias term/xterm xterm time-date elec-pair
finder-inf info package easymenu epg-config url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs
password-cache url-vars seq byte-opt gv bytecomp byte-compile cconv
cl-loaddefs cl-lib em-smart pcomplete comint ansi-color ring esh-var
esh-io esh-cmd esh-opt esh-ext esh-proc esh-arg esh-groups eshell
esh-module esh-mode esh-util mule-util tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow isearch timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors 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 composite charscript charprop case-table epa-hook jka-cmpr-hook
help simple abbrev obarray 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 threads dbusbind inotify lcms2 dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty make-network-process emacs)

Memory information:
((conses 16 144606 12731)
 (symbols 48 24197 1)
 (miscs 40 93 195)
 (strings 32 42027 1466)
 (string-bytes 1 1199907)
 (vectors 16 18583)
 (vector-slots 8 527167 5540)
 (floats 8 65 215)
 (intervals 56 1514 83)
 (buffers 992 15))
To: bug-gnu-emacs <at> gnu.org
Subject: 26.2; Infinite recursion in eshell/clear and em-smart
--text follows this line--
Hi all,

I encountered the following reproduceable bug earlier today and, to my
knowlege, it has not yet been reported.  Here is the bug:

The `eshell/clear` command triggers an infinite recursion and prints
6,599 lines when em-smart mode is active.

Steps to reproduce:

1) Use the following config:

    (require 'eshell)
    (require 'em-smart)
    (add-hook 'eshell-mode-hook 'eshell-smart-initialize)

2) M-x eshell

3) Enter `clear` at the eshell prompt


Expected behavior:

The contents of the eshell buffer are scrolled by a single page, leaving
a blank window.


Actual behavior:

The contents of the eshell buffer are scrolled by 6,599 lines and the
message "Error during redisplay: (eval (mode-line-eol-desc)) signaled
(error "Lisp nesting exceeds ‘max-lisp-eval-depth’")" is echoed.

Info from M-x report-emacs-bug is below.

Best regards,
Daniel




In GNU Emacs 26.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.8)
 of 2019-04-12 built on juergen
System Description:	Antergos Linux

Recent messages:
Error during redisplay: (eval (mode-line-eol-desc)) signaled (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
Error during redisplay: (eval (if (frame-parameter nil (quote client)) "@" "")) signaled (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
Error during redisplay: (eval (unless (display-graphic-p) "-%-")) signaled (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
redisplay--pre-redisplay-functions: (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
Error during redisplay: (eval (unless (display-graphic-p) "-%-")) signaled (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
Quit
Making completion list...
Mark set
Undo!
Making completion list...

Configured using:
 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
 --localstatedir=/var --with-x-toolkit=gtk3 --with-xft --with-modules
 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong
 -fno-plt' CPPFLAGS=-D_FORTIFY_SOURCE=2
 LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD LCMS2

Important settings:
  value of $LC_COLLATE: en_US.UTF-8
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Emacs-Lisp

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-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
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
/home/dsock/.emacs.d/elpa/soap-client-3.1.5/soap-inspect hides /usr/share/emacs/26.2/lisp/net/soap-inspect
/home/dsock/.emacs.d/elpa/soap-client-3.1.5/soap-client hides /usr/share/emacs/26.2/lisp/net/soap-client

Features:
(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
format-spec rfc822 mml mml-sec epa derived epg gnus-util rmail
rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils em-unix em-term term disp-table ehelp
em-script em-prompt em-ls em-hist em-pred em-glob em-dirs em-cmpl
em-basic em-banner em-alias term/xterm xterm time-date elec-pair
finder-inf info package easymenu epg-config url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs
password-cache url-vars seq byte-opt gv bytecomp byte-compile cconv
cl-loaddefs cl-lib em-smart pcomplete comint ansi-color ring esh-var
esh-io esh-cmd esh-opt esh-ext esh-proc esh-arg esh-groups eshell
esh-module esh-mode esh-util mule-util tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow isearch timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors 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 composite charscript charprop case-table epa-hook jka-cmpr-hook
help simple abbrev obarray 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 threads dbusbind inotify lcms2 dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty make-network-process emacs)

Memory information:
((conses 16 144606 12731)
 (symbols 48 24197 1)
 (miscs 40 93 195)
 (strings 32 42027 1466)
 (string-bytes 1 1199907)
 (vectors 16 18583)
 (vector-slots 8 527167 5540)
 (floats 8 65 215)
 (intervals 56 1514 83)
 (buffers 992 15))





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#37198; Package emacs. (Tue, 27 Aug 2019 16:37:02 GMT) Full text and rfc822 format available.

Message #8 received at 37198 <at> debbugs.gnu.org (full text, mbox):

From: Noam Postavsky <npostavs <at> gmail.com>
To: Daniel Sockwell <daniel <at> codesections.com>
Cc: 37198 <at> debbugs.gnu.org
Subject: Re: bug#37198: 26.2; Infinite recursion in eshell/clear with em-smart
Date: Tue, 27 Aug 2019 12:35:58 -0400
forcemerge 31326 37198
quit

Daniel Sockwell <daniel <at> codesections.com> writes:

> 1) Use the following config:
>
>     (require 'eshell)
>     (require 'em-smart)
>     (add-hook 'eshell-mode-hook 'eshell-smart-initialize)
>
> 2) M-x eshell
>
> 3) Enter `clear` at the eshell prompt
>
>
> Expected behavior:
>
> The contents of the eshell buffer are scrolled by a single page, leaving
> a blank window.
>
>
> Actual behavior:
>
> The contents of the eshell buffer are scrolled by 6,599 lines and the
> message "Error during redisplay: (eval (mode-line-eol-desc)) signaled
> (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")" is echoed.

This is Bug#31326, which is fixed in master (what will be Emacs 27.1).





Forcibly Merged 31326 37198. Request was from Noam Postavsky <npostavs <at> gmail.com> to control <at> debbugs.gnu.org. (Tue, 27 Aug 2019 16:40:01 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 25 Sep 2019 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 208 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.