Follow-up Comment #7, bug #48848 (project screen): char * MakeTermcap(aflag) int aflag; { char buf[TERMCAP_BUFSIZE]; register char *p, *cp, *s, ch, *tname; int i, wi, he; #if 0 int found; #endif
if (display) ### Check if we are on tty { wi = D_width; he = D_height; tname = D_termname; ### here we get value from display (we are on terminal emulator like xterm), tname = "xterm" } else { wi = 80; he = 24; tname = "vt100"; ### here we use vt100, cause we aren't on terminal (for example when running screen from cron job) } debug1("MakeTermcap(%d)\n", aflag); if ((s = getenv("SCREENCAP")) && strlen(s) < TERMCAP_BUFSIZE) ### check for user provided SCREENCAP { sprintf(Termcap, "TERMCAP=%s", s); strcpy(Term, "TERM=screen"); ### Here we just set $TERM to screen debug("getenvSCREENCAP o.k.\n"); return Termcap; } Termcaplen = 0; debug1("MakeTermcap screenterm='%s'\n", screenterm); debug1("MakeTermcap termname='%s'\n", tname); if (*screenterm == '\0' || strlen(screenterm) > MAXSTR - 3) { debug("MakeTermcap sets screenterm=screen\n"); strncpy(screenterm, "screen", MAXTERMLEN); ### screenterm = "screen" screenterm[MAXTERMLEN] = '\0'; } #if 0 found = 1; #endif do { strcpy(Term, "TERM="); ### here wego and start setting $TERM, it's usual case (ie, we didn't bailout on SCREENCAP check above) p = Term + 5; if (!aflag && strlen(screenterm) + strlen(tname) < MAXSTR-1) ### if we are not attaching and we will fit into string { sprintf(p, "%s.%s", screenterm, tname); ### screenterm + '.' + tname; assuming above result is "screen.xterm" if (e_tgetent(buf, p) == 1) ### we found terminal entry break; ### so we break out of do loop } #ifdef COLOR if (nwin_default.bce) { sprintf(p, "%s-bce", screenterm); if (e_tgetent(buf, p) == 1) break; } #endif #ifdef CHECK_SCREEN_W if (wi >= 132) { sprintf(p, "%s-w", screenterm); if (e_tgetent(buf, p) == 1) break; } #endif strcpy(p, screenterm); if (e_tgetent(buf, p) == 1) break; strcpy(p, "vt100"); #if 0 found = 0; #endif } while (0); /* Goto free programming... */ _______________________________________________________ Reply to this item at: <http://savannah.gnu.org/bugs/?48848> _______________________________________________ Message sent via/by Savannah http://savannah.gnu.org/