GNU bug report logs -
#79059
31.0.50; eshell-emit-prompt errors when front-sticky or rear-nonsticky properties are set to t
Previous Next
Full log
View this message in rfc822 format
> Date: Sun, 20 Jul 2025 12:00:55 +0200
> From: László Vaskó <hello <at> vlaci.email>
>
> Hello,
>
> Since df288d2e414 (bug#74230) eshell is more careful adding text
> properties to prompts using `eshell--append-text-property'. It's
> implementation assumes that `get-text-property' will always return a
> list. This is not true, as both `front-sticky' and `rear-nonsticky'
> properties can be set to t.
>
> Repro:
>
> -- 8< --
> cat <<EOF > /tmp/init-eshell-propertized-prompt.el
> ;; -*- lexical-binding: t; -*-
> (setq eshell-prompt-function
> (defun propertizing-prompt ()
> (setq eshell-prompt-string (propertize "test" 'rear-nonsticky t))))
> (eshell)
> EOF
> emacs -Q --batch --load /tmp/init-eshell-propertized-prompt.el
> -- 8< --
>
> Output:
>
> Loading eshell-alias...
> Loading eshell-alias...done
> Loading eshell-banner...
> Loading eshell-banner...done
> Loading eshell-basic...
> Loading eshell-basic...done
> Loading eshell-cmpl...
> Loading eshell-cmpl...done
> Loading eshell-extpipe...
> Loading eshell-extpipe...done
> Loading eshell-glob...
> Loading eshell-glob...done
> Loading eshell-hist...
> Loading eshell-hist...done
> Loading eshell-ls...
> Loading eshell-ls...done
> Loading eshell-pred...
> Loading eshell-pred...done
> Loading eshell-prompt...
> Loading eshell-prompt...done
> Loading eshell-script...
> Loading eshell-script...done
> Loading eshell-term...
> Loading eshell-term...done
> Loading eshell-unix...
> Loading eshell-unix...done
>
> Error: wrong-type-argument (sequencep t)
> eshell--append-text-property(0 4 rear-nonsticky (read-only font-lock-face field) #("test" 0 4 (front-sticky (read-only font-lock-face field) font-lock-face eshell-prompt read-only t field prompt rear-nonsticky t)))
> eshell-emit-prompt()
> run-hooks(eshell-post-command-hook)
> eshell-mode()
> eshell()
> load-with-code-conversion("/tmp/init-eshell-propertized-prompt.el" "/tmp/init-eshell-propertized-prompt.el" nil t)
> command-line-1(("--load" "/tmp/init-eshell-propertized-prompt.el"))
> command-line()
> normal-top-level()
>
> debug-early-backtrace...done
> Wrong type argument: sequencep, t
Thanks.
Jim, could you please look into this?
This bug report was last modified 23 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.