Exemple #1
0
TERMINAL *
set_curterm(TERMINAL *nterm)
{
	TERMINAL *oterm;
	size_t l, n;
	char *p;

	oterm = cur_term;
	cur_term = nterm;

	ospeed = 0;
	if (cur_term == NULL)
		PC = '\0';
	else {
		if (pad_char == NULL)
			PC = '\0';
		else
			PC = *pad_char;
		_ti_setospeed(nterm);
		ospeed = nterm->_ospeed;

		p = ttytype;
		l = sizeof(ttytype);
		if ((n = strlcpy(p, nterm->name, l)) == strlen(p)) {
			p += n;
			l -= n;
			*p++ = '|';
			l--;
			if (nterm->_alias  &&
				(n = strlcpy(p, nterm->_alias, l)) == strlen(p))
			{
				p += n;
				l -= n;
				*p++ = '|';
				l--;
			}
			if (nterm->desc  &&
				(n = strlcpy(p, nterm->desc, l)) == strlen(p))
			{
				p += n;
				l -= n;
				*p++ = '|';
				l--;
			}
			p--;
		}
		*p = '\0';
	}

	return oterm;
}
Exemple #2
0
TERMINAL *
set_curterm(TERMINAL *nterm)
{
	TERMINAL *oterm;

	oterm = cur_term;
	cur_term = nterm;

	ospeed = 0;
	if (cur_term == NULL)
		PC = '\0';
	else {
		if (pad_char == NULL)
			PC = '\0';
		else
			PC = *pad_char;
		_ti_setospeed(nterm);
		ospeed = nterm->_ospeed;
	}

	return oterm;
}