Fix interaction between libedit initialization and Capsicum

in units(1). The most visible is the removal of libedit warnings
about being unable to open termcap database.

Reviewed by:	eadler@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D3322
This commit is contained in:
Edward Tomasz Napierala 2015-08-08 10:38:37 +00:00
parent 445bda3f4f
commit 840a09d240

View File

@ -802,10 +802,10 @@ main(int argc, char **argv)
if (!readfile)
readunits(NULL);
if (cap_enter() < 0 && errno != ENOSYS)
err(1, "unable to enter capability mode");
if (optind == argc - 2) {
if (cap_enter() < 0 && errno != ENOSYS)
err(1, "unable to enter capability mode");
havestr = argv[optind];
wantstr = argv[optind + 1];
initializeunit(&have);
@ -815,8 +815,7 @@ main(int argc, char **argv)
addunit(&want, wantstr, 0, 1);
completereduce(&want);
showanswer(&have, &want);
}
else {
} else {
inhistory = history_init();
el = el_init(argv[0], stdin, stdout, stderr);
el_set(el, EL_PROMPT, &prompt);
@ -828,6 +827,9 @@ main(int argc, char **argv)
if (inhistory == 0)
err(1, "Could not initialize history");
if (cap_enter() < 0 && errno != ENOSYS)
err(1, "unable to enter capability mode");
if (!quiet)
printf("%d units, %d prefixes\n", unitcount,
prefixcount);