r308432: Capsicumized `basename` make zsh prompt broken
iblis
iblis at hs.ntnu.edu.tw
Mon Nov 28 04:39:29 UTC 2016
Hi,
Here is a minimal config of zsh prompt invoking `basename`:
```
└─[iblis at abeing]% cat /home/ib-test/.zshenv
function set_prompt {
prompt="$(basename $HOME) >"
}
function zle-line-init zle-keymap-select {
set_prompt
zle reset-prompt
}
zle -N zle-line-init
zle -N zle-keymap-select
set_prompt
```
and launching zsh will get something like this:
```
└─[iblis at abeing]% sudo su ib-test
ib-test >basename: capsicum: Bad file descriptor
>
>basename: capsicum: Bad file descriptor
>
```
To be honest, I have no idea about what casper/caspicum is. I just
changed the `basename.c` and zsh work again.
Index: basename.c
===================================================================
--- basename.c (revision 309213)
+++ basename.c (working copy)
@@ -65,7 +65,7 @@
setlocale(LC_ALL, "");
- if (caph_limit_stdio() < 0 || (cap_enter() < 0 && errno != ENOSYS))
+ if (cap_enter() < 0 && errno != ENOSYS)
err(1, "capsicum");
aflag = 0;
Any idea?
--
Iblis Lin
More information about the freebsd-current
mailing list