zsh-workers
 help / color / mirror / code / Atom feed
* Bug: Null byte in shell history causes segfault during $historywords reverse subscripting
@ 2023-05-26 19:37 Eric Freese
  2023-05-27  1:46 ` Bart Schaefer
  2023-06-05  7:11 ` Jun T
  0 siblings, 2 replies; 4+ messages in thread
From: Eric Freese @ 2023-05-26 19:37 UTC (permalink / raw)
  To: zsh-workers

Hi,

I've come across a segfault when shell history has been loaded from a
file and contains a command where a null byte was entered into the
line editor via ^V^@ (opposed to typing as $'\0'). Reverse
subscripting $historywords on a pattern that does not match triggers
the error.

I've reproduced the segfault on my local 5.9 installation as well as
in the zsh-users/zsh-docker images [1] for master, 5.4, and 4.3.11.

Here is my output. Note that I typed the ^@ by pressing ctrl+v
followed by ctrl+space.

```
% docker run --rm -it zshusers/zsh:master
06e7a43e26d3# HISTFILE=$(mktemp)
06e7a43e26d3# SAVEHIST=30
06e7a43e26d3# : ^@
06e7a43e26d3# fc -W
06e7a43e26d3# fc -R
06e7a43e26d3# echo $historywords[(r)nomatch*]
zsh: segmentation fault (core dumped)  zsh -df
```

[1]: https://github.com/zsh-users/zsh-docker

Cheers,
Eric


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-06-05  7:12 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-26 19:37 Bug: Null byte in shell history causes segfault during $historywords reverse subscripting Eric Freese
2023-05-27  1:46 ` Bart Schaefer
2023-05-27  7:33   ` Bart Schaefer
2023-06-05  7:11 ` Jun T

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).