diff options
Diffstat (limited to 'usr/src/lib/libcurses/screen')
-rw-r--r-- | usr/src/lib/libcurses/screen/setupterm.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/usr/src/lib/libcurses/screen/setupterm.c b/usr/src/lib/libcurses/screen/setupterm.c index c1f4bdeb04..f67e8751b7 100644 --- a/usr/src/lib/libcurses/screen/setupterm.c +++ b/usr/src/lib/libcurses/screen/setupterm.c @@ -37,8 +37,6 @@ * contributors. */ -#pragma ident "%Z%%M% %I% %E% SMI" - /*LINTLIBRARY*/ #include <stdio.h> @@ -48,6 +46,7 @@ #include <string.h> #include <unistd.h> #include <errno.h> +#include <zone.h> #include "curses_inc.h" #define TERMPATH "/usr/share/lib/terminfo/" @@ -272,9 +271,11 @@ setupterm(char *term, int filenum, int *errret) } if (tfd < 0) { + const char *zroot = zone_get_nroot(); /* /usr/share/lib/terminfo/?/$TERM */ if (snprintf(fname, sizeof (fname), - "%s/%c/%s", TERMPATH, *term, term) >= sizeof (fname)) { + "%s/%s/%c/%s", zroot == NULL ? "" : zroot, TERMPATH, + *term, term) >= sizeof (fname)) { term_errno = TERMINFO_TOO_LONG; goto out_err; } |