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