X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=usystem.c;h=2334572f301ffbb91494ced99ad70545aac7eee6;hb=e6e38912837a4fe2464356408d10dee950b3121c;hp=a24d04ff049865493176cb08232c5ba65daee2bc;hpb=14bd89bc510fb6ff864b235fbac39044079f131f;p=xboard.git diff --git a/usystem.c b/usystem.c index a24d04f..2334572 100644 --- a/usystem.c +++ b/usystem.c @@ -1,11 +1,11 @@ /* - * usystem.c -- X-free, but Unix-like code for XBoard front end + * usystem.c -- X-free, but Unix-like code for XBoard front end * * Copyright 1991 by Digital Equipment Corporation, Maynard, * Massachusetts. * * Enhancements Copyright 1992-2001, 2002, 2003, 2004, 2005, 2006, - * 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. + * 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc. * * The following terms apply to Digital Equipment Corporation's copyright * interest in XBoard: @@ -170,6 +170,8 @@ extern char *getenv(); # define N_(s) s #endif +static int get_term_width P(()); + static char *cnames[9] = { "black", "red", "green", "yellow", "blue", "magenta", "cyan", "white" }; TextColors textColors[(int)NColorClasses]; @@ -225,7 +227,7 @@ static int parse_cpair (ColorClass cc, char *str) { if ((textColors[(int)cc].fg=parse_color(str, 0)) == -2) { - fprintf(stderr, _("%s: can't parse foreground color in `%s'\n"), + fprintf(stderr, _("%s: can't parse foreground color in '%s'\n"), programName, str); return -1; } @@ -356,6 +358,9 @@ ExpandPathName (char *path) } if (*s == '~') { + if(s[1] == '~') { // use ~~ for XBoard's private data directory + snprintf(d, 4*MSG_SIZ, DATADIR "%s", s+2); + } else if (*(s+1) == '/') { safeStrCpy(d, getpwuid(getuid())->pw_dir, 4*MSG_SIZ ); strcat(d, s+1); @@ -570,7 +575,7 @@ OpenTCP (char *host, char *port, ProcRef *pr) host, port, gai_strerror(error)); return ENOENT; } - + for (ai = ais; ai != NULL; ai = ai->ai_next) { if ((s = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol)) < 0) { error = errno; @@ -710,7 +715,7 @@ OutputToProcessDelayed (ProcRef pr, char *message, int count, int *outError, lon return outCount; } -void +int ICSInitScript () { /* try to open the icsLogon script, either in the location given @@ -734,12 +739,13 @@ ICSInitScript () } } - if (f != NULL) + if (f != NULL) { ProcessICSInitScript(f); - else + return TRUE; + } else printf("Warning: Couldn't open icsLogon file (checked %s and %s).\n", appData.icsLogon, buf); - return; + return FALSE; } void @@ -751,7 +757,7 @@ ResetFrontEnd () } #include -int +static int get_term_width () { int fd, default_width; @@ -787,5 +793,3 @@ NotifyFrontendLogin () { update_ics_width(); } - -