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;  		} | 
